XmlSerializer将文件中的“加载为”;反序列化期间-当XML包含希伯来语时

问题描述 投票:1回答:2

这是我的xml:

<Product>
<ItemCode>123456</ItemCode>
<ItemName>תמצית מרווה משולשת  SP 1:2 - מ"ל 100</ItemName>
<FrgnName>Salvia fruitcosa</FrgnName>
</Product>

ItemName包含"字符。反序列化后,此字符替换为&quot;。这是我的代码:

var serializer = new XmlSerializer(typeof(ProductXmlWrapper));
using (var fileStream = new FileStream(file, FileMode.Open, FileAccess.Read))
  {

     var product = (ProductXmlWrapper)serializer.Deserialize(fileStream);

     if (product != null)
     {
       SaveDataToDb(product.BO.Product);
     }
  }

所以我应该改变什么?它取决于编码吗?

c# xml encoding deserialization xmlserializer
2个回答
2
投票
[如果我没记错的话,虽然产品的ItemName属性的预览将&quot;\"作为字符串中的特殊字符包括在内,但这不应影响该属性的使用。

0
投票
您可以使用XmlReader代替使用流,并使用“ utf-8”进行编码:
© www.soinside.com 2019 - 2024. All rights reserved.