0
내 응용 프로그램에서는 많은 양의 데이터가 생성되고 XmlDocument를 사용하여 XML 파일로 작성됩니다. 메 커닉은 잘 작동하지만 새로운 XML로 데이터를 쓰는 기능을 몇 번이고 다시 직렬화하는 함수를 호출하면 이전에 새 XML에 새 데이터를 더한 내용을 복사합니다!C# XMLdocument 다시 똑같이 쓰는 것
내가, 내가하는 XmlDocument 문서 직렬화 함수의 beggining에서 = 새로운 된 XmlDocument()를 호출하고있어 이해가 안...
private static Boolean SaveParsedDataAsXML(ParsedData DataParsed, String Name)
{
try
{
XmlDocument doc = new XmlDocument();
XmlNode xmlnode = doc.CreateNode(XmlNodeType.XmlDeclaration, "", "");
doc.AppendChild(xmlnode);
XmlElement generalVariables = doc.CreateElement("Variables");
generalVariables.AppendChild(SerializeElement(doc, "Path", DataParsed.Path));
.
.
.
XmlElement chatMessages = doc.CreateElement("ChatMessages");
foreach (Message mess in DataParsed.ChatMessages)
{
XmlElement singleMess = doc.CreateElement("SingleMessage");
singleMess.AppendChild(SerializeElement(doc, "MessageID", mess.MessageID.ToString()));
singleMess.AppendChild(SerializeElement(doc, "MessageName", mess.MessageName));
singleMess.AppendChild(SerializeElement(doc, "MessageTime", mess.MessageTime.ToString()));
singleMess.AppendChild(SerializeElement(doc, "MessageContent", mess.MessageContent));
singleMess.AppendChild(SerializeElement(doc, "MessageTarget", mess.MessageTarget.ToString()));
chatMessages.AppendChild(singleMess);
}
generalVariables.AppendChild(chatMessages);
.
.
.
doc.AppendChild(generalVariables);
//Saving and returning true, serialization successful.
doc.Save(OutputPath + "\\" + ReplayName + ".xml");
return true;
}
catch
{
return false;
}
}
예, ParsedData dataParsed = new ParsedData(); dataParsed = parserApe.ParseReplay (replayFilePath); –
ParsedData의 새 인스턴스를 만들지 않은 데이터를 구문 분석하는 내부 함수였습니다. –