J’essaie de créer un fichier XML qui est parfaitement formaté. Cela inclut des éléments qui seront remplacés plus tard. La sortie n’est pas parfaitement formatée.
xEvent
contient un gabarit XML complet, comme une chaîne
Voici le plus du code pertinent
ssortingng c2 = "]]>"; ssortingng c = "<![CDATA["; XmlDocument xml2 = new XmlDocument(); xml2.LoadXml(xEvent); foreach (XmlNode itemNode in xml2.DocumentElement.ChildNodes) { XmlElement xmlElement = (XmlElement)itemNode; if (itemNode.ChildNodes.Count == 0) { } else { foreach (XmlNode childNode in itemNode.ChildNodes) { if (childNode.Name == "Options") { foreach (XmlNode item in childNode.ChildNodes) { if (item.Name == "Data") { foreach (XmlNode itemC in item.ChildNodes) { if (itemC.Name == "Caption") { XmlElement getTemplateID = xml2.CreateElement("TemplateID"); getTemplateID.InnerText = "#TemplateID"; itemC.AppendChild(getTemplateID); //if (OptionsData[0].Key == "NoChilds") //{ // XmlElement Getnochild = itemDoc.CreateElement("CaptionOptions"); // Getnochild.InnerText = ""; // itemC.AppendChild(Getnochild); //} //else //{ XmlNode elemCap = xml2.CreateNode(XmlNodeType.Element, "CaptionOptions", null); itemC.AppendChild(elemCap); XmlElement Getelem1 = xml2.CreateElement("CaptionField"); elemCap.AppendChild(Getelem1); XmlElement elem2 = xml2.CreateElement("FieldID"); XmlElement elem3 = xml2.CreateElement("FieldID"); elem2.InnerText = "#FieldID1"; elem3.InnerText = "#FieldID2"; XmlElement elem4 = xml2.CreateElement("TextSsortingng"); XmlElement elem5 = xml2.CreateElement("TextSsortingng"); elem4.InnerText = "#TextSsortingng1"; elem5.InnerText = "#TextSsortingng2"; Getelem1.AppendChild(elem2); Getelem1.AppendChild(elem4); Getelem1.AppendChild(elem3); Getelem1.AppendChild(elem5); //} } } } } } SsortingngWriter ssortingng_writer = new SsortingngWriter(); XmlTextWriter xml_text_writer = new XmlTextWriter(ssortingng_writer); xml_text_writer.Formatting = Formatting.Indented; xml2.WriteTo(xml_text_writer); // xml is your XmlDocument //ssortingng xEvent2 = ssortingng_writer.ToSsortingng(); xEvent2 = xEvent2.Replace("", c); //replacing values xEvent2 = xEvent2.Replace(" ", c2); //replacing values xEvent2 = xEvent2.Replace("#TemplateID", TemplateName + name); xEvent2 = xEvent2.Replace("#FieldID1", name2 + "1"); xEvent2 = xEvent2.Replace("#TextSsortingng1", "\"" + str2 + "\""); xEvent2 = xEvent2.Replace("#FieldID2", name2 + "2"); xEvent2 = xEvent2.Replace("#TextSsortingng2", "\"" + str3 + "\""); PrimarySsortingng = xEvent2;
J’attends le XML du formulaire suivant
<![CDATA[<Caption xmlns=\"http://www.omn.to/iTX/OmCxsd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.om.t/iTX/OmnibusCn.xsd\" T000114-NOW NOW1 "Ep 01" NOW2 "" ]]>
Mais ma sortie arrive comme
<![CDATA[ T000114-NOW NOW1 "Ep 01" NOW2 "" ]]> //Data is not alligned properly