如何编写XML输出?

时间:2009-11-03 05:49:53

标签: c# xml linq xelement

如何查看以下C#代码的XML输出?我可以看到它使用XElement,但我可以在哪里找到XML文件或输出?

private void Form1_Load(object sender, EventArgs e)
{
    XElement doc = new XElement("searchresults"); // root element

    //create 
    XElement result = new XElement("result",
                             new XElement("Resulthead", "AltaVista"),
                             new XElement("ResultURL", "www.altavista.com/"),
                             new XElement("Description", "AltaVista provides the most comprehensive search experience on the Web! ... "),
                             new XElement("DisplayURL", "www.altavista.com/")
                             );
    doc.Add(result);

    //add another search result
    result = new XElement("result",
                             new XElement("Resulthead", "Dogpile Web Search"),
                             new XElement("ResultURL", "www.dogpile.com/"),
                             new XElement("Description", "All the best search engines piled into one. All the best search engines piled into one."),
                             new XElement("DisplayURL", "www.dogpile.com/")
                             );

    doc.Add(result);

    string xmlString = doc.ToString(SaveOptions.DisableFormatting);
}

2 个答案:

答案 0 :(得分:4)

您的结果只存在于“xmlString”变量中 - 它不会被写入控制台/窗口,也不会写入文件。

您必须添加

doc.Save(@"C:\your-xml-file-name.xml");

在方法结束时将内容保存到磁盘上的文件中。

确保使用完整路径,或者检查当前运行应用的目录(例如,(yourappname)\bin\debug中)。

马克

答案 1 :(得分:2)

该代码不是在任何地方编写XML而是内存(xmlString变量)。

您可以尝试拨打XElement.Save()并将其存入文件:

doc.Save(@"filename.xml");

或者使用调试器并查看变量。

或者,如果您愿意,只需将其放在TextBox中:

textBox.Text = xmlString;

警告它可能没有很好的格式......