读取xml 文件
来源:互联网 发布:科比06赛季场均数据 编辑:程序博客网 时间:2024/04/29 11:03
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
using System.Drawing;
using System.Collections;
using System.Xml;
using System.IO;
using System.Reflection;
namespace listview
{
class config
{
private Color _backColor;
private infoArr info = new infoArr();
public Color BackColor
{
get {return _backColor ;}
set { _backColor = value; }
}
public infoArr Info
{
get { return info; }
set { info = value;}
}
public void LoadFromXmlFile()
{
XmlTextReader reader;//只能向前读取
if (File.Exists("set.xml"))//先读取外部的xml
{
reader = new XmlTextReader("set.xml");
}
else// 从嵌入资源里读取
{
Assembly am = Assembly.GetExecutingAssembly();
Stream sm = am.GetManifestResourceStream("listview.set.xml");
reader = new XmlTextReader(sm);
}
string key = "";
try
{
while (reader.Read())
if (reader.NodeType == XmlNodeType.Element)// 成对的括号标记的 都是element
{
if (reader.Name == "ID")
{
key = reader.ReadElementString().Trim();
info.Add(key, "");//重载版本的add
}
else if (reader.Name == "color")// 感叹索引器的作用
{
info[key] = reader.ReadElementString().Trim();
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
if (reader != null)
{
reader.Close();
}
}
}
public void SaveToXmlFile()
{
XmlDocument doc = new XmlDocument();
doc.LoadXml("<set></set>");// 指定的xml加载进doc
XmlNode root = doc.SelectSingleNode("set");
// 写入信息
for (int i = 0; i < info.Length; i++)
{
XmlElement xelType = doc.CreateElement("Type");// 每个信息都在type 里
XmlElement xelID = doc.CreateElement("ID");
xelID.InnerText = ((setinfo)Info[i]).GetIdStr();
xelType.AppendChild(xelID);
XmlElement xelColor = doc.CreateElement("color");
xelColor.InnerText = ((setinfo)Info[i]).GetIdStr();
xelType.AppendChild(xelColor);
root.AppendChild(xelType);
}
doc.Save("set.xml");;// 没有写全路径名 意味着是跟exe 文件在一个目录下的
}
}
}
////////////////////////set.xml
<set>
<Type>
<ID>00100001111111000110</ID>
<color>-122322</color>
</Type>
<Type>
<ID>00011110000010011111</ID>
<color>-23232</color>
</Type>
<Type>
<ID>00001111111000100110</ID>
<color>65443</color>
</Type>
</set>
///YINGYONG
bool[] arr = new bool[20];
private config cf = new config();
cf.LoadFromXmlFile();
infoArr info =cf.Info;
ListViewItem myItem = new ListViewItem();
for (int i = 0; i < info.Length; i++)
{
myItem = listView1.Items.Add(info[i].GetIdStr());
myItem.SubItems.Add(info[i].GetColorStr());
}
- SAX 读取xml文件
- xml文件读取
- 读取xml文件内容
- 读取xml 文件
- JAVA读取XML文件
- 读取远程xml文件
- XML文件的读取
- Xml文件的读取
- JAVA读取XML文件
- 读取XML文件
- flash读取xml文件
- C#读取XML文件
- javascript 读取XML文件
- 读取xml 文件
- XML文件的读取
- 读取XML文件
- JAVA读取XML文件
- JAVA读取XML文件
- python最简单的测量时间方法
- 临睡前的8大护肤招
- 花钱是一种风度
- Visual C++ 2005 中的命名返回值优化
- php用Smarty模板生成html文件
- 读取xml 文件
- 30岁而立之前成功12条黄金法则
- c#参数值传递与引用传递的剖析
- C#属性的理解
- C#编程命名规则
- Hashtable用法
- 动态生成控件 并捕捉事件
- 对象与引用变量-----初学c#者的困惑
- ACE Proactor前摄器模式的服务器端代码