【问题标题】:how to load data from XML file directly, instead of creating XML file by tring builder如何直接从 XML 文件加载数据,而不是通过字符串生成器创建 XML 文件
【发布时间】:2012-03-31 01:20:10
【问题描述】:

我正在使用 StringBuilder 来创建 XML 文档。我想直接作为 XML 文件输入并从中获取数据,而不是构建 xml 文件。

           string namespaceUri = "NamespaceURI";
           System.Text.StringBuilder content = new StringBuilder();
           string First = "Hello World.This is Fisrt field";
           content.AppendFormat("<{0} xmlns=\"{1}\">", "rootelementname", namespaceUri);
           content.AppendFormat("<{0} xmlns=\"{1}\">{2}</{0}>", "first", namespaceUri, First);
           content.AppendFormat("</{0}>", "rootelementname");
           string data = content.ToString();

使用这个创建的输出XML文件如下

    <rootelementname xmlns="namespaceUri">
        <first>Hello World.This is Fisrt field</first>            
    </rootelementname>

如果我直接有上面的 xml 文件,在路径下 "E:\abcd\source.xml 如何将 source.xml 直接加载到“数据”变量中。

请分享您对此的看法。

谢谢

【问题讨论】:

标签: c# xml xmldocument xmlreader


【解决方案1】:

您可以尝试以下方法:

XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(@"E:\abcd\source.xml");

string data = xmlDoc.OuterXml;

以上只是一个示例,请在您的代码中相应地处理异常。

【讨论】:

    【解决方案2】:

    您不应该使用字符串生成器来序列化您的 XML。尝试使用 XDocument。看看这篇文章,它更详细地解释了:- How to correctly open a FileStream for usage with an XDocument

    【讨论】:

      【解决方案3】:

      使用System.Xml.XmlDocument 加载和保存Xml。 Check this.

      您可以使用XmlDocument.Load() 方法从任何目录加载xml。检查this

      【讨论】:

        猜你喜欢
        • 2020-01-07
        • 2011-07-25
        • 1970-01-01
        • 2011-02-21
        • 1970-01-01
        • 2012-04-18
        • 1970-01-01
        • 2023-04-11
        • 1970-01-01
        相关资源
        最近更新 更多