如何将 XML 文件(XmlDocument)的内容写入文本文件?
Posted
技术标签:
【中文标题】如何将 XML 文件(XmlDocument)的内容写入文本文件?【英文标题】:How to I write the contents of XML file(XmlDocument) to text file? 【发布时间】:2020-06-30 05:26:28 【问题描述】:我在 XMLDocument
类型的局部变量 xml
中有 xml 数据
我希望将 xml 数据原样保存到本地文件中。
我尝试过System.IO.File.WriteAllText(@"C:\MyProfile\OutOut.txt", xml.ToString());
之类的方法,但不起作用。
有人可以告诉我如何进行吗?
如果需要任何其他数据,现在也请告诉我。
谢谢。
**更新:** 上面的任务是通过使用XmlDocument.Save(FilePath);
完成的,现在只是对问题的一个小更新如下:
如果我只需要保存一个特定的父节点及其子节点,我该如何继续
示例 xml 文件
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Master Name="Accounts">
<Employee>
<Section>
<Details>
<Name="abc" ID="68" PF="9999" />
</Details>
<Department DeptId="12" />
</Section>
<Section>
<Details>
<Name="xyz" ID="69" PF="9999" />
</Details>
<Department DeptId="13" />
</Section>
</Employee>
</Master>
只有节点 <Employee>
和它的子节点。
【问题讨论】:
您是否查看过XmlDocument
class 是否提供了满足您需求的方法?
或者在互联网上搜索类似 xmldocument to string c#
这能回答你的问题吗? How do I write an XML string to a file?
XmlDocument.Save() - 使用文件名作为“此代码将 XmlDocument 转换为文本:
using (var stringWriter = new StringWriter())
using (var xmlTextWriter = XmlWriter.Create(stringWriter))
xmlDoc.WriteTo(xmlTextWriter);
xmlTextWriter.Flush();
return stringWriter.GetStringBuilder().ToString();
【讨论】:
这里有这么多的代码,但它并没有实现保存到文件的既定目标。 使用XmlDocument.Save(FilePath);
将 Xml 内容保存到文本文件中。以上是关于如何将 XML 文件(XmlDocument)的内容写入文本文件?的主要内容,如果未能解决你的问题,请参考以下文章
如何将 System.Xml.XmlDocument 类型添加到应用程序状态
如何将 XmlNode 从一个 XmlDocument 复制到另一个?