下面讲述根据xml生成对应序列化反序列化类的过程,xml需要首先转化为xsd,然后再生成为实体类。其中,XSD是XML Schema Definition的缩写。

1.拥有一个xml文件

2.打开vs的command line:

xsd *.xml ,执行这个命令 是通过xml文件生成xsd文件,xsd文件将生成在当前命令目录下。

xsd *.xsd /classes 是通过xsd文件生成xml的解析类,cs文件。示例顺便指定了命名空间为Test

这样就可以把cs文件放到项目中去使用了,这个cs文件就是xml对应的解析类。

PS :xsd自动解析的文件不知道每个节点是不是唯一的还是有多个。如果需要指定某节点是唯一的,可以在生成xsd文件之后,把xsd文件放到vs中,

使用xml(Text) editor 方式打开,然后指定maxOccurs="1",这样就指定了当前节点为唯一一个了。maxOccurs="unbounded",表明xml节点可以有很多个。 这样再把修改的xsd使用xsd *.xsd /classes 命令生成cs文件,或许更满足你的需求。

3. 解析 xml

static void Main(string[] args)

{

try

{

XmlSerializer ser = new XmlSerializer(typeof(Response));

//读取xml进行解析

FileStream fs = new FileStream(@"D:\a.xml", FileMode.Open);

Response response = ser.Deserialize(fs) as Response;

response.SIP.Line1.Port = "9999";

fs.Close();

//修改xml并保存

fs = new FileStream(@"D:\a.xml", FileMode.Open, FileAccess.Write);

ser.Serialize(fs, response);

fs.Close();

}

catch (Exception ex)

{

Console.WriteLine(ex.Message);

}

}

其中Response是我xml的首节点。

附加:

我的xml示例是:

1.0

true

false

3600

true

https://eeee.cn

86400

true

https://ffff.com

Terr

5538769

for@abc.com

5530769

1sPU

TCP

123

7899

off

proxy

java xsd 解析 xml文件_xsd解析xml相关推荐

  1. C++中用TinyXML对XML文件进行解析

    最近老师要求的一个项目中需要在C++对XML文件进行解析,原来只在JAVA中做过类似的解析,然后上了某度了一下,最后搜了一篇关于TinyXML的博客,地址如下:http://blog.csdn.net ...

  2. jdom解析xml文件_JDOM编辑XML文件示例

    jdom解析xml文件 JDOM provides very neat way to manipulate XML files, using JDOM is very easy and the cod ...

  3. xml文件的解析过程详解

    XML项目工程展示图如下图: student.xml 文件展示:<?xml version="1.0" encoding="utf-8" ?> &l ...

  4. VC++ MSXML创建XML文件以及对XML文档解析

    VC++ MSXML创建XML文件以及对XML文档解析 转自http://www.newxing.com/Tech/Program/Cpp/703.html // XmlCreationDemo.cp ...

  5. mybatis中config.xml文件的解析

    config.xml文件的解析是主要是XMLConfigBuilder完成的,通过调用parseConfiguration来实现整个解析过程 public Configuration parse() ...

  6. IOS开发基础之使用AFNetworking框架实现xml文件的解析

    IOS开发基础之使用AFNetworking框架实现xml文件的解析 info.plist加入这行代码 <key>NSAppTransportSecurity</key> &l ...

  7. 使用c#对xml文件进行解析 功能演示 161483724

    使用c#对xml文件进行解析 功能演示 161483724 导入命名空间 实例化一个节点文档对象 读取文件 获取根节点 获取节点的名称 获取所有子节点 类对象数组的对象 根据索引从节点集合中取出节点对 ...

  8. (C++)将数据库文件导出XML文件以及解析XML文件生成数据库文件的处理方法

    将数据库文件导出XML文件以及解析XML文件生成数据库文件的处理方法 思路:将数据库所有要导出的信息通过sql语句得到,存储到结构体中,然后将结构体的内容通过自定义的xml格式导出. 此方法使用的是T ...

  9. python读取xml文件信息_python读取xml文件方法解析

    关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python来读取xml文件. 什么是xm ...

最新文章

  1. 还不懂spring IOC核心原理?200行代码带你手撸一个
  2. 软件工程--第二章--可行性分析
  3. scss-@for 指令
  4. 阅读react-redux源码(二) - createConnect、match函数的实现
  5. oracle truncate 日期,【Oracle】truncate和delete区别
  6. 2019 ACM/ICPC 南京站 E.Observation,区间筛
  7. Java中如何防止内存泄漏的发生
  8. android fastboot模式下载以及出现的问题
  9. homework2的进展
  10. position:relative的用法
  11. SQL中cast和convert的区别
  12. [windows]win10家庭版切换到管理员账户
  13. win 10 禁用键盘,下载vc
  14. Qt编写的开源帖子集合(懒人专用)
  15. Windows无法安装信任证书
  16. iTween基础之Fade(淡入淡出)
  17. mysql 谓语提前,谓语提前的倒装句:
  18. 只有那些疯狂到以为自己能够改变世界的人, 才能真正的改变世界
  19. docx4j word转pdf解决中文乱码问题(包括宋体(正文))
  20. Mysql复制数据库--star.Hou

热门文章

  1. 第131届中国进出口商品交易会将于4月15-24日在网上举办
  2. 汉语中常用标点符号用法
  3. Celery-4.1 用户指南: Periodic Tasks
  4. quartus ii matlab,基於Quartus II和MATLAB的FIR濾波器設計與仿真(二)
  5. 用U盘做一个即插即用的unbuntu20系统
  6. Javascript 两个对象数组 根据相同的id进行合并
  7. 记一次使用百度云图像搜索功能 python sdk
  8. Melty blood act cadenza Version B(附 OST) emule 下载
  9. HDU6252 Subway Chasing 2017 CCPC Final
  10. android TextView webView 显示 html table 标签内容