在 C# 中将元素写入 XML 文件

本文关键字:XML 文件 元素 | 更新日期: 2023-09-27 18:34:04

所以我正在尝试创建一个大型XML文件:

<xml>
    <element id ="1">1</element>
    <element id ="2">2</element>
    <element id ="3">3</element>
    ...
    <element id ="100000000">100000000</element>
</xml>

使用 C#。我似乎找不到格式化元素以在声明中包含 id 的方法(我根本不熟悉 XML)。

有谁知道我如何在 C# 中做到这一点?

这是我的尝试:

using System;
using System.Xml;
using System.Linq;
using System.Text;
namespace BigXML
{
    class Class1
    {
        static void Main(string[] args)
        {
            // Create a new file in C:'' dir
            XmlTextWriter textWriter = new XmlTextWriter("C:''Users''username''Desktop''testBigXmFile.xml", null);
            textWriter.Formatting = Formatting.Indented;
            textWriter.Indentation = 3;
            textWriter.IndentChar = ' ';
            // Opens the document
            textWriter.WriteStartDocument(true);
            textWriter.WriteStartElement("xml");
            // Write comments
            for (int i = 0; i < 100000000; i++)
            {
                textWriter.WriteElementString("element id =" + '"' + i.ToString() + '"', i.ToString());
            }
            textWriter.WriteEndElement();
            textWriter.WriteEndDocument();
            textWriter.Close();
        }
    }
}

谢谢,祝你有美好的一天。

在 C# 中将元素写入 XML 文件

你需要

写属性"id"。有几种方法可以做到这一点,例如 XmlWriter.WriteAttributeString

 for (int i = 0; i < 100000000; i++)
 {
    textWriter.WriteStartElement("book"); 
    writer.WriteAttributeString("id", i.ToString());                
    textWriter.WriteString(i.ToString());
    textWriter.WriteEndElement(); 
 }

另请查看System.Xml.Linq。你可以像这样使用XDocument执行相同的操作

XDocument xdocfoo = new XDocument(new XElement("xml"));
for (int i = 0; i < 100; i++)
{
    XElement ele = new XElement("element");
    ele.SetAttributeValue("id", i.ToString());
    ele.Value = i.ToString();
    xdocfoo.Root.Add(ele);
}
xdocfoo.Save(@"c:'foo.xml");