无法将XML写入文件

本文关键字:文件 XML | 更新日期: 2023-09-27 18:25:46

我在C#(Xamarin)上编写Android应用程序

我正在尝试将xml写入文件

创建XML 的代码

XmlDocument doc = new XmlDocument();
            XmlElement el = (XmlElement)doc.AppendChild(doc.CreateElement("Order"));
            el.SetAttribute("CallConfirm", "1");
            el.SetAttribute("PayMethod", "Безнал");
            el.SetAttribute("QtyPerson", "");
            el.SetAttribute("Type", "2");
            el.SetAttribute("PayStateID", "0");
        el.SetAttribute("Remark", "{Comment}");
            el.SetAttribute("RemarkMoney", "0");
            el.SetAttribute("TimePlan", "");
            el.SetAttribute("Brand", "1");
            el.SetAttribute("DiscountPercent", "0");
            el.SetAttribute("BonusAmount", "0");
            el.SetAttribute("Department", "");
            XmlElement el2 = (XmlElement)el.AppendChild(doc.CreateElement("Customer"));
            el2.SetAttribute("Login", "");
        el2.SetAttribute("FIO", "{FIO}");
            XmlElement el3 = (XmlElement)el.AppendChild(doc.CreateElement("Address"));
        el3.SetAttribute("CityName", "{CityName}");
            el3.SetAttribute("StationName", "");
        el3.SetAttribute("StreetName", "{StreetName}");
        el3.SetAttribute("House", "{HouseName}");
            el3.SetAttribute("Corpus", "");
            el3.SetAttribute("Building", "");
        el3.SetAttribute("Flat", "{FlatName}");
            el3.SetAttribute("Porch", "");
            el3.SetAttribute("Floor", "");
            el3.SetAttribute("DoorCode", "");
            XmlElement el4 = (XmlElement)el.AppendChild(doc.CreateElement("Phone"));
        el4.SetAttribute("Code", "{Code}");
        el4.SetAttribute("Number", "{Phone}");
        XmlElement el5 = (XmlElement)el.AppendChild(doc.CreateElement("Products"));
        XmlElement el6 = (XmlElement)el5.AppendChild(doc.CreateElement("Product"));
        el6.SetAttribute("Code", "{ProductCode}");
        el6.SetAttribute("Qty", "{QTY}");

            Console.WriteLine ("TUT");
            Console.WriteLine(doc.OuterXml);

我试着这样写,但在设备上看不到。

    var documentsPath = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
var filePath = Path.Combine(documentsPath, "myFile.xml");
File.WriteAllText(filePath, doc.ToString());

如何将其写入文件,或者我的代码中可能没有什么内容?

无法将XML写入文件

在行File.WriteAllText(filePath, doc.ToString());中,方法doc.ToString()返回System.Xml.XmlDocument

请改用doc.OuterXml属性或doc.Save(path)方法。