.NET XML 串行化讲座
1,浅串行化:只串行化类的公共字段和属性
公共属性必须是可读且可写的
使用命名空间:using System.Xml.Serialization;
以Book类为例:
串行化模板:
public void SerializeIt(string filename)
{
XmlSerializer serializer = new XmlSerializer(typeof(Book));
StreamWriter writer = new StreamWriter(filename);
Book myBook = new Book();
serializer.Serialize(writer, myBook);
writer.Close();
}
反串行化模板:
public void DeserializeIt(string filename)
{
XmlSerializer serializer = new XmlSerializer(typeof(Book));
FileStream fs = new FileStream(filename, FileMode.Open);
Book myBook = (Book)serializer.Deserialize(fs);
fs.Close();
}
*使用XmlSerializer的类必须有一个不带参数的默认构造函数——在反串行化中使用
*序列化ArrayList类型字段X的特殊处理:
相关文档:
/// <summary>
/// DataTable-------------------->XML --String
/// </summary>
public static String ToXmlString(DataTable dt)
{
StringWriter tr = new StringWriter();
try
{
dt.WriteXml(tr); ......
var
xmlDoc
=
null
;
function
parseXML
(
xmlUrl
)
{
try
{
//IE
xmlDoc
=
new
ActiveXObject
(
"Microsoft.XMLDOM"
);
xmlDoc
.
async
=
false
;
xmlDoc
......
最近在sina看nba的文字直播的时候,对网站右下角的那一个聊天窗口产生兴趣,就决定自己也做一个。
上网查查资料,这样的聊天室无非就是用户输入数据传到服务器保存,然后用户页面再实时地从数据库取出数据,显示在页面上,即可完成一次聊天操作。
首先我定义了一个xml文件,用于保存用户 ......
import java.io.File;
import java.io.FileNotFoundException;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class ResolveXmlFile {
public void resolverXml() throws DocumentException, FileNotFoundExcept ......