Создание XML заданной структуры - C#

Узнай цену своей работы

Формулировка задачи:

Драсте всем экспертам! Нужна ваша помощь. Не буду пустозвонить и сразу объясню суть проблемы. Пишу приложение, которое в ходе своей работы должно "сгенерировать" XML-файл следующего вида:
<?xml version="1.0" encoding="utf-8" ?> 
<root>
  <config name="params">
    <coordinates name="c0">
      <x>25</x>
      <y>65</y>
    </coordinates>
    <!-- ... И так далее, где меняются только "c" и значения в "x" и "y"... -->
    <coordinates name="c19">
      <x>74345</x>
      <y>68456</y>
    </coordinates>
  </config>
</root>
Честно говоря, с XML я пока не особо тесно общался, но, полазив по сети и поискав немного материалов и примеров, попытался составить код самостоятельно. Вот, что у меня получилось:
public void XMLGen()
        {
            XmlDocument document = new XmlDocument();
 
            document.CreateXmlDeclaration("1.0", "utf-8", null);
 
            XmlNode root = document.CreateElement("root");
            document.AppendChild(root);
 
            XmlNode config = document.CreateElement("config");
            document.DocumentElement.AppendChild(config);
            XmlAttribute name = document.CreateAttribute("name");
            name.Value = "params";
            config.Attributes.Append(name);
 
            for (int i = 0; i < 20; i++)
            {
                XmlNode coordinates= document.CreateElement("coordinates");
                document.DocumentElement.AppendChild(coordinates);
 
                XmlAttribute сname = document.CreateAttribute("name");
                сname.Value = "r"+i.ToString();
                coordinates.Attributes.Append(rname);
                    XmlNode x= document.CreateElement("x");
                    x.InnerText = CoordX[i].ToString();
                    XmlAttribute y= document.CreateAttribute("y");
                    y.InnerText = CoordY[i].ToString();
                root.AppendChild(coordinates);
            }
 
            document.Save("coordinates.xml");
        }
И выдаёт это творение файлик вот с таким содержанием:
<root>
  <config name="params" />
  <coordinates name="c0" />
  <coordinates name="c1" />
  <coordinates name="c2" />
  <!-- ... "c++" ... -->
  <coordinates name="c17" />
  <coordinates name="c18" />
  <coordinates name="c19" />
</root>
Да уж, немножко не то получилось... Пожалста, помогите исправить мой код, ну или предложите получше, если мой совсем какашка. :-) За ранее благодарю всех за помощь и потраченное на меня время!

Решение задачи: «Создание XML заданной структуры»

textual
Листинг программы
<root>
  <config name="params">
  </config>
  <record name="r0">
    <points>1</points>
    <time>1</time>
  </record>
  <!-- -->
  <record name="r19">
    <points>19</points>
    <time>19</time>
  </record>
</root>

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.786 из 5