如何在c#中创建子节点 [英] how to make child node in c#
本文介绍了如何在c#中创建子节点的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
嗨
i希望在c#中为其中一个项目创建子节点,但是我的代码会生成这个
< C >
< 主题 > Spaceman < / Subject >
< 项目 >
程序员
< 子 > IT < / Child >
< Child > 硬件程序员< / Child >
< / Items >
< 项目 >
Mo
< 儿童 > IT < / Child >
< 儿童 > 硬件程序员< / Child >
< / Items >
< 项目 >
程序员
< 子 > IT < < span class =code-leadattribute> / Child >
< 子 > 硬件程序员< /儿童 >
< / Items >
< / C >
d这是我的代码
XmlTextWriter writer = new XmlTextWriter( test.xml,Encoding.UTF8);
writer.WriteStartDocument();
writer.WriteStartElement( C);
writer.WriteStartElement( Subject);
writer.WriteString(txtSubject.Text);
writer.WriteEndElement(); // 主题
< span class =code-keyword> foreach ( string item in listBox1.Items)
{
writer.WriteStartElement( Items);
writer.WriteString(item);
foreach ( string items in listBox2.Items)
{
writer.WriteStartElement( Child) ;
writer.WriteString(items);
writer.WriteEndElement(); // Child
}
writer.WriteEndElement(); // Items
}
writer.WriteEndElement( ); // C
writer.WriteEndDocument();
writer.Close();
有人可以告诉我的代码在哪里做错了它会让xml像这样
With Respect
解决方案
试试这个:
foreach ( string item in listBox1.Items)
{
writer。 WriteStartElement(item);
// writer.WriteString(item);
foreach ( string items in listBox2.Items)
{
writer.WriteStartElement( Child);
writer.WriteString(items);
writer.WriteEndElement(); // Child
}
writer.WriteEndElement(); // item
}
Hi
i want to make child node for one of these items in c# but my code make this
<C>
<Subject>Spaceman</Subject>
<Items>
Programmer
<Child>IT</Child>
<Child>Hardware Programmer</Child>
</Items>
<Items>
Mo
<Child>IT</Child>
<Child>Hardware Programmer</Child>
</Items>
<Items>
Programmer
<Child>IT</Child>
<Child>Hardware Programmer</Child>
</Items>
</C>
and this is my code
XmlTextWriter writer = new XmlTextWriter("test.xml", Encoding.UTF8);
writer.WriteStartDocument();
writer.WriteStartElement("C");
writer.WriteStartElement("Subject");
writer.WriteString(txtSubject.Text);
writer.WriteEndElement();//Subject
foreach (string item in listBox1.Items)
{
writer.WriteStartElement("Items");
writer.WriteString(item);
foreach (string items in listBox2.Items)
{
writer.WriteStartElement("Child");
writer.WriteString(items);
writer.WriteEndElement();//Child
}
writer.WriteEndElement();//Items
}
writer.WriteEndElement();//C
writer.WriteEndDocument();
writer.Close();
can someone tell where of my code doing wrong to it make xml like this
With Respect
解决方案
Try this:
foreach (string item in listBox1.Items) { writer.WriteStartElement(item ); //writer.WriteString(item); foreach (string items in listBox2.Items) { writer.WriteStartElement("Child"); writer.WriteString(items); writer.WriteEndElement(); //Child } writer.WriteEndElement(); //item }
这篇关于如何在c#中创建子节点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文