易截截图软件、单文件、免安装、纯绿色、仅160KB

C#实现XML系列化和反系列化的总结

常用的系列化定义(using System.Xml.Serialization;)
[XmlAttribute("name")]        // 定义<Tag name="…"></Tag>
[XmlElement("label")]        // 定义<label>…</label>
[XmlIgnoreAttribute()]        // 跳过系列化
[XmlElement("description", IsNullable = false)]        // 定义<description>…</description>,在属性值为null时不显示该元素,即可选
[XmlArray("temp_var_list", IsNullable=false)]        // 定义<temp_var_list><Tag>…</Tag>…<Tag>…</Tag></temp_var_list>,即数组对象的根结点
[XmlArrayItem("temp_var_item")]        // 定义<temp_var_item>…</temp_var_item>…<temp_var_item>…</temp_var_item>,即数据元素的根结点,常与XmlArray组合使用
[XmlRoot("dpd")]        // 定义要结点
几个注意事项
(1)需序列化的字段必须是公共的(public)
(2)需要序列化的类都必须有一个无参的构造函数
(3)枚举变量可序列化为字符串,无需用[XmlInclude]
(4)导出非基本类型对象,都必须用[XmlInclude]事先声明。该规则递归作用到子元素
 如导出ArrayList对象,若其成员是自定义的,需预包含处理:
 using System.Xml.Serialization;
 [XmlInclude(typeof(自定义类))]
(5)Attribute中的IsNullable参数若等于false,表示若元素为null则不显示该元素。
 也就是说:针对值类型(如结构体)该功能是实效的
 若数组包含了100个空间,填充了10个类对象,则序列化后只显示10个节点
 若数组包含了100个空间,填充了10个结构体对象,则序列化后会显示100个节点
(6)真正无法XML序列化的情况
 某些类就是无法XML序列化的(即使使用了[XmlInclude])
  IDictionary(如HashTable)
  System.Drawing.Color
  System.Drawing.Font
  SecurityAttribute声明
&


相关文档:

dom4j 读 xml 文件

<?xml version="1.0" encoding="UTF-8"?>
<company> 
  <tel>020-12345678-66</tel>  
  <tel>020-12345678-85</tel>  
  <introduce> 
  <![CDATA[
<br/><h1>公司简介& ......

J2ME 的XML 解析器 kXML


kXML是一个J2ME平台下使用的XML语法分析程序,对于J2ME应用程序非常适合。它有一个非常独特的DOM操作方法和被称为Pull的语法分析方法。它有以下特性:
· 支持XML名称空间   
· 用"松散"模式分析HTML或其它SGML格式   
· 占用很少的存储空间(21 kbps)   
· 基于Pull的分析   
......

C#生成XML文件的 函数

protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
         &nbs ......

C#中实现WebBrowser控件的HTML源代码读写

趁周末想折腾一下嵌入ASP.NET的WinForm程序
需要用到WebBrowser控件的HTML源码读写
就把以前的一些代码片断移值到C#下
顺便发个帖子备忘,呵呵
  
思路其实很简单,直接通过document.documentElement.outerHTML
或者使用IPersistStreamInit接口直接对流进行处理
前者我就不废话了,后者实现方法如下
&nbs ......

XML DOM介绍 心雨之家 web开发

XML DOM介绍
 
一、XML DOM简介
DOM(Document Object Model,文档对象模型)是一种应用程序接口(API)的应用,它将文档(如XML文档,HTML文档等)看成是一个文档对象,然后通过程序语言(如JavaScript等脚本语言,C++等)调用该文档对象,对文档中的数据进行存取,并利用程序对获取的数据进行跟进一步的处理。
X ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号