XML:可拓展的标记语言(跨平台数据表现)用于保存数据

XML:标记需要关闭 ;单根性

.NET中DOM常用对象:

XmlDocument :一个XML文档

XmlNode:xml中的单个节点

XmlNodeList:排序的节点集合

XmlElement:表示一个元素

XmlAttribute:表示一个属性

XmlAttributeCollection:元素节点的属性集合

XmlText:元素属性的文本类容

eg:

<students>

<student   id="1" age="20">张三</student>

</students>

元素是XML文档的核心

XmlElement 表示XM文档中的元素节点 派生自XmlNode类

XmlElement常用属性:

Attributes:获取一个XmlAttributeCollection,包含该元素的所有属性

ChildNodes:所有子节点

NodeType:节点类型

Value:节点值

解析XML

  //实例化一个xmlDocument对象

            XmlDocument doc = new XmlDocument();
//服务器路径
string path = Server.MapPath(@"~\class.xml");
//加载xmlDocument
doc.Load(path);
//得到文档根节点
XmlNode root = doc.DocumentElement;
string info = "";
foreach (XmlNode item in root.ChildNodes)
{
foreach (XmlNode itemc in item.ChildNodes)
{
info += itemc.Value + "<br/>";
}
}
Response.Write(info);

写入XML:

  //创建xml文档描述
XmlDeclaration decl = doc.CreateXmlDeclaration("1.0", "utf-8", null);
//创建根节点
XmlNode root = doc.CreateNode(XmlNodeType.Element, "students", null);
//子节点
XmlNode class1 = doc.CreateNode(XmlNodeType.Element, "student", null);
//文档节点
XmlNode clasName = doc.CreateNode(XmlNodeType.Text, null, null);
//赋值
clasName.Value = "赵六";
//属性节点
XmlAttribute classCa = doc.CreateAttribute("stuNo");
classCa.Value = "004";
XmlAttribute classAge = doc.CreateAttribute("age");
classAge.Value = "20";
class1.AppendChild(clasName); class1.Attributes.Append(classCa); class1.Attributes.Append(classAge);
root.AppendChild(class1);
doc.AppendChild(root);
string mathX = Server.MapPath(@"~\class.xml");
doc.Save(mathX);

  

JSON:轻量级的数据交换格式(容易阅读和编写,利于机器解析和生成)

JSON构成:键值对的集合

eg:

{"name":"张三","age":20,....}

数组: {"students":[{},{}]}

JSON的序列化与反序列化:

引入命名空间:using system.Runtime.Serialization,Json;

实例化:

JavaScriptSerializer js = new JavaScriptSerializer();

反序列化:  js.Deserialize();

序列化:   js.Serialize();

XML与JSON对比:

1,客户端:json更容易被序列化为javascript对象

2,服务器:传输的是xml字符串,

3,安全性:json容易携带恶意代码

4,性能:json没有多种标记,解析起来更快

5,验证:xml更成熟

XML于JSON的更多相关文章

  1. WebApi接口 - 响应输出xml和json

    格式化数据这东西,主要看需要的运用场景,今天和大家分享的是webapi格式化数据,这里面的例子主要是输出json和xml的格式数据,测试用例很接近实际常用情况:希望大家喜欢,也希望各位多多扫码支持和点 ...

  2. 【.net 深呼吸】聊聊WCF服务返回XML或JSON格式数据

    有时候,为了让数据可以“跨国经营”,尤其是HTTP Web有关的东东,会将数据内容以 XML 或 JSON 的格式返回,这样一来,不管客户端平台是四大文明古国,还是处于蒙昧时代的原始部落,都可以使用这 ...

  3. C# XML转JSON,不引用第三方JSON.NET类库

    应用场景:需要调用第三方接口(返回XML)数据,然后供自己多个系统使用(涉及跨域,使用JSONP) 代理:调用接口(把XML转换为JSONP解决跨域问题) B/S应用系统:调用代理返回的数据进行UI显 ...

  4. SQL2008使用json.net实现XML与JSON互转

    借助CLR,首先实现字符串的互转,然后使用存储过程实现JSON2table     public class JsonFunction    {        /// <summary> ...

  5. [Network] HTML、XML和JSON学习汇总

    写在前面:楼主也是刚刚接触这方面的知识,之前完全是零基础,后来经朋友推荐了几个不错的博文,看完以后豁然开朗.但是此博文更加偏重于基础知识介绍(其实更深的楼主也还不了解,这方面的大神请绕道),只是分享个 ...

  6. XML和JSON数据格式对比

    概念 XML 扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语 ...

  7. xml和json的区别

    本文转自SanMaoSpace的博客 链接地址如下:http://www.cnblogs.com/SanMaoSpace/p/3139186.html 1.定义介绍 (1).XML定义扩展标记语言 ( ...

  8. C#中XML和json互相转换

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Xm ...

  9. 数据解析(XML和JSON数据结构)

    一   解析 二 XML数据结构 三 JSON 数据结构     一 解析 1  定义: 从事先规定好的格式中提取数据     解析的前提:提前约定好格式,数据提供方按照格式提供数据.数据获取方则按照 ...

  10. ASP.NET中的XML和JSON

    一.DOM简介 1.XML 定义:XML是一种跨语言.跨平台的数据储存格式 2.什么是DOM DOM(document object model)文档对象模型:是一种允许程序或脚本动态的访问更新文档内 ...

随机推荐

  1. 在caffe中添加新的layer

    比如现在要添加一个vision layer,名字叫Ly_Layer:(一般命名第一个字母大写,其余小写.) 1.属于哪个类型的layer(共五种:common_layer, data_layer, l ...

  2. Uva 11988 Broken Keyboard

    因为要经常移动这些字符,所以采用的数据结构是链表. next[i]起到的作用大概就是类似链表里的next指针. 0.需要注意的是,判断cur == last ? 如果 是 则 last=i 1.另外一 ...

  3. 安卓微POS-PDA手持终端,支持离线在线联网销售开单;移动开单 盘点 功能

    采购单.采购退货单  销售单.销售退货单.收款.优惠.赠品等操作实现盘点作业(多台设备同时作业,相同商品,数量累计) 现场打印票据 实现采购订单.采购单.采购退货单.销售订单.销售单.销售退货单验货没 ...

  4. Docker搭建便捷的开发者环境

    你可能遇到这样的场景:开发软件时,需要像数据库(mysql,mongodb).消息系统(rabbitmq).缓存服务(redis)等其它依赖服务.当然我们可以找台机器,一步步安装依赖,然后把所有依赖的 ...

  5. 每天一个Linux命令---tcpdump

    用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具. tcpdump可以将网络中传送的数据包的“头” ...

  6. ccc animation

    cc.Class({ extends: cc.Component, properties: { sheepAnim: { default: null, type: cc.Animation } }, ...

  7. Iterable(迭代器)的用法

    一.前言 在开发中,经常使用的还是for-each循环来遍历来Collection,不经常使用Iterable(迭代器)的,下面记录一下terable是一般用法: 二.说明 迭代器是一种设计模式,它是 ...

  8. iOS中为网站添加图标到主屏幕

    1 <link rel="apple-touch-icon-precomposed" href="icon.png"/> 2 <link re ...

  9. Spoj 10628. Count on a tree 题解

    题目大意: 给定一棵n个点的树,每个点有一个权值,m个询问,每次询问树上点x到点y的路径上的第k小数. 思路: dfs后给每个节点一个dfs序,以每个点在他父亲的基础上建立主席树,询问时用(点x+点y ...

  10. topcoder SRM 610 DIV2 TheMatrix

    题目的意思是给一个01的字符串数组,让你去求解满足棋盘条件的最大棋盘 棋盘的条件是: 相邻元素的值不能相同 此题有点像求全1的最大子矩阵,当时求全1的最大子矩阵是用直方图求解的 本题可以利用直方图求解 ...