我有如下功能

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/

10-12 15:06