我遇到的问题是我生成的XML包含:
<attribute name="Actors">Trevante Rhodes , André Holland , Janelle Monáe</attribute>
但它应该是这样的:
<attribute name="Actors">Trevante Rhodes , André Holland , Janelle Monáe</attribute>
@IntelliData's answer to the question posted here似乎建议唯一的解决方案是用HTML编码的计数器部件替换它们。
所以...如果我的源文件可能包含来自一个或多个国家/地区的任何外国字符,这是否意味着我必须编写一个例程才能做到这一点?
如果我别无选择,是否有更有效的方法来进行搜索和替换?
myData = myData.Replace("À","À").Replace("à","à").Replace(...)
更多信息
要创建XML文件,我正在使用
using (StreamWriter sw = new StreamWriter(myTxtFile))
{
...
}
因此,myTxtFile包含
Trevante Rhodes , André Holland , Janelle Monáe , Ashton...
然后我使用:
打开.txt文件using (StreamReader sr = new StreamReader(mySourceFile, Encoding.GetEncoding("iso-8859-1")))
{
...
some processing to assign the data to XML nodes...
...
}
最后创建XML文件:
using (StreamWriter sw = new StreamWriter(xmlDataFilename, false, Encoding.GetEncoding("utf-8")))
{
...
myXMLObject.outerXml
...
}
产生这个:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<productRequest>
<attribute name="Actors"> Trevante Rhodes , André Holland , Janelle Monáe , Ashton...</attribute>
</productRequest>
更多信息2
搜索和替换问题的答案在于 here