c# - 使用 C# 将 XML 转换为字符串

标签 c# xml

我有如下功能

public string GetXMLAsString(XmlDocument myxml)
    {
        XmlDocument doc = new XmlDocument();
        doc.LoadXml(myxml);
       
        StringWriter sw = new StringWriter();
        XmlTextWriter tx = new XmlTextWriter(sw);
        doc.WriteTo(tx);

        string str = sw.ToString();// 
        return str;
    }

我正在将一个 XML 从另一个方法传递给这个方法。但在 doc.loadxml() 中,系统需要一个字符串,因为我传递的是 XML,它会抛出错误。

如何解决这个问题?

最佳答案

As Chris suggests ,你可以这样做:

public string GetXMLAsString(XmlDocument myxml)
{
    return myxml.OuterXml;
}

或者像这样:

public string GetXMLAsString(XmlDocument myxml)
    {

        StringWriter sw = new StringWriter();
        XmlTextWriter tx = new XmlTextWriter(sw);
        myxml.WriteTo(tx);

        string str = sw.ToString();// 
        return str;
    }

如果你真的想创建一个新的 XmlDocument 然后这样做

XmlDocument newxmlDoc= myxml

关于c# - 使用 C# 将 XML 转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6161159/

相关文章:

c# - 如何通过反射获取一个类型的所有常量?

c# - Unity 后处理 PostProcessEffectRenderer 显示在编辑器中但不在构建中

java - 将 XML 数据转换为 DOC 并将其另存为 TIFF

c# - 在抽象基的构造函数中创建新的派生类型

c# - 3.5 框架中的哪些方法具有类似 String.Format 的签名?

xml - XSLT 替换存在于另一个元素值中的元素

sql-server - 从 TSQL OPENXML 中的 xml 文档中选择节点文本值

C++ OpenCV 读取 HaarCascades 减慢计算机速度

c# - Entity Framework 多对多关系初始化 ICollection

python :xml.etree.ElementTree,删除 "namespaces"