Почему мой код не хочет добавлять больше дочерних узлов? (XML) - PullRequest
1 голос
/ 27 февраля 2011

Я пишу программу для перевода игры.Исходная строка и переведенная строка сохраняются в XmlDocument, который можно сохранить в файл, когда пользователь нажимает кнопку.

Все работает нормально до определенного количества узлов (30?) Или до достиженияопределенного размера (8192 байта?), тогда он просто прекращает добавлять узлы в XmlDocument.

Мой код: http://lesderid.pastebin.com/zgcT9PVu.

Файл XML: @character.lua.Decoded.VOQ.xml

1 Ответ

2 голосов
/ 27 февраля 2011

Кажется, нет никаких проблем, я попробовал ваш код и получил правильный вывод ... так что проблема в другом месте.


Я попробовал это (в LINQPAD) и получил 100 элементов (10 349 байт)

XmlDocument XmlDoc;
XmlElement mainStringsNode;


void Main()
{
    XmlDoc = new XmlDocument(); 
    XmlNode xmlDeclarationNode = XmlDoc.CreateXmlDeclaration("1.0", "UTF-8", null); 
    XmlDoc.AppendChild(xmlDeclarationNode); 
    mainStringsNode = XmlDoc.CreateElement("Strings");  
    XmlDoc.AppendChild(mainStringsNode);    
    var docWriter = new StringWriter(); 
    XmlDoc.Save(docWriter);
    for(int i=0; i < 100; i++)      AddStringChild(i, "satr", "edited");    
    XmlDoc.Dump();      
}
private void AddStringChild(int id, string originalString, string editedString)
{
        XmlNode stringNode = XmlDoc.CreateElement("String");
        var posAttribute = XmlDoc.CreateAttribute("position");
        posAttribute.Value = id.ToString();
        if (stringNode.Attributes != null) stringNode.Attributes.Append(posAttribute);
        mainStringsNode.AppendChild(stringNode);
        var originalStringNode = XmlDoc.CreateElement("OriginalString");
        originalStringNode.AppendChild(XmlDoc.CreateTextNode(originalString));
        stringNode.AppendChild(originalStringNode);
        var editedStringNode = XmlDoc.CreateElement("EditedString");
        editedStringNode.AppendChild(XmlDoc.CreateTextNode(editedString));
        stringNode.AppendChild(editedStringNode);
}

Выход:

<?xml version="1.0" encoding="UTF-8"?><Strings><String position="0"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="1"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="2"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="3"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="4"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="5"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="6"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="7"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="8"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="9"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="10"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="11"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="12"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="13"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="14"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="15"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="16"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="17"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="18"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="19"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="20"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="21"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="22"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="23"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="24"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="25"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="26"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="27"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="28"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="29"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="30"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="31"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="32"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="33"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="34"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="35"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="36"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="37"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="38"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="39"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="40"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="41"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="42"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="43"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="44"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="45"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="46"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="47"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="48"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="49"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="50"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="51"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="52"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="53"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="54"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="55"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="56"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="57"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="58"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="59"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="60"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="61"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="62"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="63"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="64"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="65"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="66"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="67"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="68"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="69"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="70"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="71"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="72"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="73"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="74"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="75"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="76"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="77"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="78"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="79"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="80"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="81"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="82"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="83"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="84"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="85"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="86"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="87"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="88"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="89"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="90"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="91"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="92"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="93"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="94"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="95"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="96"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="97"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="98"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String><String position="99"><OriginalString>satr</OriginalString><EditedString>edited</EditedString></String></Strings>
...