文本文件中的符号被错误地写入xml文件中

时间:2017-08-01 06:33:37

标签: c# xml

我有一个带有特殊符号的文本文件,例如£,€我想将它写入xml文件,同时写下这些符号,它被写成问号。

以下是我的代码:

String[] data = File.ReadAllLines("SpecialSymbols.TXT");
            XElement root = new XElement("root",
                     from item in data
                     select new XElement("Line", item));
            root.Save("XmlFile.Xml");

3 个答案:

答案 0 :(得分:1)

xml中的编码必须是encoding =“utf-8”,然后才支持这些符号。

答案 1 :(得分:0)

使用编码

从文件中读取行
String[] data = File.ReadAllLines("SpecialSymbols.TXT",Encoding.UTF8);

答案 2 :(得分:0)

创建一个XDocument而不是XElement并指定xml编码 像这样...

string[] data = File.ReadAllLines("SpecialSymbols.TXT");
XDocument xDoc = new XDocument(
    new XDeclaration("1.0", "utf-8", "yes"),
    new XElement("root",
        from item in data
        select new XElement("Line", item))
    );
xDoc.Save("XmlFile.Xml");