rt
解决方案 »
- C#将字符串加密成数字,可逆解密,能实现不?
- 关于DataGridView问题
- C#引用C++ Dll,调用问题
- 3天了没有得到有实质意义的回答,第三次提出同样的问题.我快绝望了
- 新手求助。请教如何解读这段程序。谢谢。
- 如何实现打开文件超时?
- 请教:怎样实现 MSN 中好友列表的界面?
- 有给微软或者其他国外大型软件公司做过软件产品测试的朋友进来看看了,放分。
- ☆☆☆我的第一份工作--明基逐鹿.这个公司怎么样啊???偶一点都不知道.给点建议&&散分☆☆☆http://expert.csdn.net/Expert/topic/2550/25
- C# .net 调用按钮
- 如何给生成的PDF文件加入书签
- 问一个面试的程序题,请大家进来帮忙参谋一下
写入:System.IO.FileStream myFileStream = new System.IO.FileStream(filename, System.IO.FileMode.Create);
System.Xml.XmlTextWriter myWriter = new System.Xml.XmlTextWriter(myFileStream, Encoding.Unicode);
thisDataset.WriteXml(myWriter);
myWriter.Close();
public void SaveSet(string singlePackage, string Form, string Button,ArrayList arrarSel)
{
string strPath = Application.StartupPath + "\\ReportSet.xml";
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(strPath); XmlNodeList nodeList = xmlDoc.SelectSingleNode("ReportSet").ChildNodes;
foreach (XmlNode xn in nodeList)//遍历所有子节点
{ XmlElement xe = (XmlElement)xn;//将子节点类型转换为XmlElement类型
if (xe.GetAttribute("ID") == singlePackage && xe.GetAttribute("Form") == Form && xe.GetAttribute("Button") == Button)
{
xmlDoc.SelectSingleNode("ReportSet").RemoveChild(xe);
break; }
}
XmlNode root = xmlDoc.SelectSingleNode("ReportSet");//查找DevChokMods
XmlElement xe1 = xmlDoc.CreateElement("singlePackage");//创建一个DevChokMod节点
xe1.SetAttribute("ID", singlePackage);
xe1.SetAttribute("Form", Form);//设置该节点InfoType属性
xe1.SetAttribute("Button", Button);
for (int i = 0; i < arrarSel.Count ; i++)
{
XmlElement xesub1 = xmlDoc.CreateElement("rptID");
xesub1.InnerText =arrarSel [i].ToString ();//设置文本节点
xe1.AppendChild(xesub1);//
} root.AppendChild(xe1); xmlDoc.Save(strPath); }
原来的和生成后的不用循环节点
直接操作需要复制内容的节点的OuterXml和复制后的节点的InnerXml就可以了举个例子原来的XML<?xml version="1.0" encoding="gb2312"?>
<Root>
<A>A</A>
<B>B</B>
</Root>
复制到的XML<?xml version="1.0" encoding="gb2312"?>
<Root>
<TempA></TempA>
</Root>
代码如下XmlDocument doc1 = new XmlDocument();
doc1.Load(你的需要复制的XML);
XmlDocument doc2 = new XmlDocument();
doc2.Load(最后得到的XML);
XmlNode root1 = doc1.DocumentElement;
XmlNode temp = doc2.SelectSingleNode("/Root/TempA");
temp.InnerXml = root.OurerXml;
doc2.Save(filePath);
最后的结果<?xml version="1.0" encoding="gb2312"?>
<Root>
<TempA>
<Root>
<A>A</A>
<B>B</B>
</Root>
</TempA>
</Root>