XML文档(51888,30)中有错误。输入的字符串格式不正确

时间:2019-03-07 08:59:11

标签: c# windows

我试图反序列化xml,但是我收到“ XML文档中存在错误(51888,30)。输入字符串的格式不正确。”

下面的代码用来反序列化xml,DOCUMENT是从xml创建的类<​​/ p>

 var serializer = new XmlSerializer(typeof(DOCUMENT));
    var buffer = Encoding.UTF8.GetBytes(savvisXml);
    using (var stream = new MemoryStream(buffer))
    {
    var savvisXMLObj = (DOCUMENT)serializer.Deserialize(stream);
    return savvisXMLObj;
    }

我在XML的这一行中遇到错误

<UNIT_PRICE>0.9800</UNIT_PRICE>

UNIT_PRICE在DOCUMENT类中声明为十进制。

谁能帮我解决这个问题。 预先感谢

1 个答案:

答案 0 :(得分:0)

在反序列化之前,尝试设置一种威胁“。”的文化。用作小数点分隔符:

System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");
System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-US");