什么是编写XML的最快方法

Hib*_*ber 8 .net c# xml xmlwriter

我需要经常创建XML文件,我选择XmlWrite来完成这项工作,我发现它花了很多时间在像WriteAttributeString这样的东西上(在某些情况下我需要写很多属性),我的问题是有没有更好的方法来创建xml文件?提前致谢.

Teo*_*gul 6

我知道最快的方法是将文档结构写为普通字符串并将其解析为XDocument对象:

string str =
@"<?xml version=""1.0""?>
<!-- comment at the root level -->
<Root>
    <Child>Content</Child>
</Root>";

XDocument doc = XDocument.Parse(str);
Console.WriteLine(doc);
Run Code Online (Sandbox Code Playgroud)

现在,您将拥有一个结构化且随时可以使用的XDocument对象,您可以在其中填充数据.此外,您甚至可以将完全结构化和填充的XML解析为字符串并从那里开始.您也可以使用这样的结构化XElements:

XElement doc =
  new XElement("Inventory",
    new XElement("Car", new XAttribute("ID", "1000"),
    new XElement("PetName", "Jimbo"),
    new XElement("Color", "Red"),
    new XElement("Make", "Ford")
  )
);
doc.Save("InventoryWithLINQ.xml");
Run Code Online (Sandbox Code Playgroud)

这会产生:

<Inventory>
  <Car ID="1000">
    <PetName>Jimbo</PetName>
    <Color>Red</Color>
    <Make>Ford</Make>
  </Car>
</Inventory>
Run Code Online (Sandbox Code Playgroud)


Jak*_*lås 3

通过例如 a (通过手动创建的代码)将其直接写入文件FileStream。这可以做得非常,但也很难维护。与往常一样,优化带有奖品标签。

另外,不要忘记“过早的优化是万恶之源”。