<?xml version="1.0" encoding="utf-8" ?>
<google>
<googleC>
<googleColorBorder>f6fbff</googleColorBorder>
<googleColorBG>f6fbff</googleColorBG>
</googleC>
<googleC>
<googleColorBorder>aaaa</googleColorBorder>
<googleColorBG>bb</googleColorBG>
</googleC>
<googleC>
<googleColorBorder>ttt</googleColorBorder>
<googleColorBG>gg</googleColorBG>
</googleC>
</google>
实体类:googleC 属性:googleColorBorder、googleColorBG请问如何反序列化成 List<googleC>不要用XmlDocument 效率太差最好用 XmlReader
<google>
<googleC>
<googleColorBorder>f6fbff</googleColorBorder>
<googleColorBG>f6fbff</googleColorBG>
</googleC>
<googleC>
<googleColorBorder>aaaa</googleColorBorder>
<googleColorBG>bb</googleColorBG>
</googleC>
<googleC>
<googleColorBorder>ttt</googleColorBorder>
<googleColorBG>gg</googleColorBG>
</googleC>
</google>
实体类:googleC 属性:googleColorBorder、googleColorBG请问如何反序列化成 List<googleC>不要用XmlDocument 效率太差最好用 XmlReader
解决方案 »
- 根据经纬度 判断是否在一个区域内
- 请教一个C#调用tuxedo服务的问题
- socket传文件问题,接受到的文件不能正常安装
- 请问在winForm窗体中如何打印?
- 关于datagridview中的checkbox 的bool值
- c#生成的可执行文件,能否让用户不安装framework组件就可以使用?
- 把一个用IE登录后捕获的COOKIE字符串绑到HttpWebRequest,然后不停的请求,20分钟后会不会过期?
- 谁能帮忙,感激不尽!
- 有什么好方法:将数据传入EXCEL,并在界面打开
- 怎樣將cs文件生成dll擴展文件
- access数据库不能增、删、改
- System.Timers.Timer 可以锁定么?
http://www.cnblogs.com/cocos/archive/2009/08/03/1537664.html
List<GoogleC> list = new List<GoogleC>();using (XmlReader reader = XmlReader.Create(...))
{
while (reader.Read())
{
string border = null, backgroud = null;
if (reader.NodeType == XmlNodeType.Element)
{
if (reader.Name == "googleColorBorder") border = reader.ReadElementContentAsString();
if (reader.Name == "googleColorBG") backgroud = reader.ReadElementContentAsString();
}
else if (reader.NodeType == XmlNodeType.EndElement && reader.Name == "googleC")
{
list.Add(new GoogleC(border, backgroud));
}
}
}
{
string border = null, backgroud = null; //<---
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element)
{
if (reader.Name == "googleColorBorder") border = reader.ReadElementContentAsString();
if (reader.Name == "googleColorBG") backgroud = reader.ReadElementContentAsString();
}
else if (reader.NodeType == XmlNodeType.EndElement && reader.Name == "googleC")
{
list.Add(new GoogleC(border, backgroud));
border = background = null;
}
}
}
写个整型的存储color,在写个color属性来读写这个就能序列化了。
root.ElementName = "google";
root.Namespace = "google";
XmlSerializer xmlSerializer = new XmlSerializer(typeof (List<googleC>), root);
XmlReader xmlReader = XmlReader.Create(@"d:\test4.xml");//文件路径
object obj = xmlSerializer.Deserialize(xmlReader);
xmlReader.Close();