c#怎么提取xml里的某几行数据?
发布网友
发布时间:2022-04-11 19:25
我来回答
共3个回答
热心网友
时间:2022-04-11 20:54
简单点的 你自己按照列子改一改,文件生成在C:\test.xml 你打开看看, 给你个思路.
需引用
using System.IO;
using System.Xml;
//点击保存把 1#梁螺栓布置 添加到XML文件中
//btnAddXml是保存控件按钮的Name属性
private void btnAddXml_Click(object sender, EventArgs e)
{
//初始化XML文档操作类
XmlDocument myDoc = new XmlDocument();
//如果C盘的test.xml文件不存在, 则创建到C盘.
if (!File.Exists(@"C:\test.xml"))
{
//声明XML
XmlDeclaration xmldec = myDoc.CreateXmlDeclaration("1.0", "gb2312", null);
myDoc.AppendChild(xmldec);
//创建元素
XmlElement xmlelem = myDoc.CreateElement("Info");
myDoc.AppendChild(xmlelem);
//保存
myDoc.Save(@"C:\test.xml");
//加载XML文件
myDoc.Load(@"C:\test.xml");
//创建一个元素
XmlElement xmle = myDoc.CreateElement("AboutInfo");
//添加自定义属性
//combox1 行数
//txtbox1 行距
//txtbox2 竖向边距
//combox2 列数
//txtbox3 列距
//txtbox4 水平边距
xmle.SetAttribute("A"" + combox1.Text + "");
xmle.SetAttribute("B", "" + txtbox1.Text + "");
xmle.SetAttribute("C", "" + txtbox2.Text + "");
xmle.SetAttribute("D", "" + combox2.Text + "");
xmle.SetAttribute("E", "" + txtbox3.Text + "");
xmle.SetAttribute("F", "" + txtbox4.Text + "");
//将节属性到文档中
XmlElement AllExlement = myDoc.DocumentElement;
AllExlement.AppendChild(xmle);
//保存
myDoc.Save(@"C:\test.xml");
}
else
{
//如果C:\test.xml存在,则修改
myDoc.Load(@"C:\test.xml");
XmlNode xmlnode = myDoc.SelectSingleNode("Info");
XmlNode xmllist = xmlnode.FirstChild;
XmlElement ex = (XmlElement)xmllist;
ex.SetAttribute("A"" + combox1.Text + "");
ex.SetAttribute("B", "" + txtbox1.Text + "");
ex.SetAttribute("C", "" + txtbox2.Text + "");
ex.SetAttribute("D", "" + combox2.Text + "");
ex.SetAttribute("E", "" + txtbox3.Text + "");
ex.SetAttribute("F", "" + txtbox4.Text + "");
myDoc.Save(@"C:\test.xml");
}
}
//点击打开控件把C:\test.xml里的数据读取到 1#梁螺栓布置 相关控件中.
//btnReadXml是打开控件按钮的Name属性
private void btnReadXml_Click(object sender, EventArgs e)
{
//初始化XML文档操作类
XmlDocument myDoc = new XmlDocument();
//加载文件
myDoc.Load(@"C:\test.xml");
//搜索起始元素
XmlNode xmlnode = myDoc.SelectSingleNode("Info");
//获取第一个节点
XmlNode xmlno = xmlnode.FirstChild;
XmlElement ex = (XmlElement)xmlno;
combox1.Text = ex.GetAttribute("A");
txtbox1.Text = ex.GetAttribute("B");
txtbox2.Text = ex.GetAttribute("C");
combox2.Text = ex.GetAttribute("D");
txtbox3.Text = ex.GetAttribute("E");
txtbox4.Text = ex.GetAttribute("F");
}
另外,虚机团上产品团购,超级便宜
热心网友
时间:2022-04-11 22:12
//得到顶层节点列表
XmlDocument xmldoc = new XmlDocument();
//得到顶层节点列表
XmlNodeList topM = xmldoc.DocumentElement.ChildNodes;
foreach (XmlElement element in topM)
{
//得到该节点的子节点
XmlNodeList nodelist = element.ChildNodes;
if (nodelist.Count > 0)
{
foreach (XmlNode el in nodelist)//读元素值
{
XmlNodeList Childlist = el.ChildNodes;
if (Childlist.Count > 0)
{
1.string a=Childlist.Item(0).InnerText;//第一个节点的内容
2.for (int j = 0; j < Childlist.Count; j++)
{
if (Childlist.Item(j).Name == "date")
string a= Childlist.Item(j).InnerText;//获取标签是date的内容
}
}
}
热心网友
时间:2022-04-11 23:47
学习了