把字符串保存成XML文件的问题

来源:百度知道 编辑:UC知道 时间:2024/06/24 04:58:59
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE SynonymRecord SYSTEM "C:\synon2007.dtd">
<Record>
<Name>Cancers</Name>
<Description>section 24; /chem ind permitted but consider also CARCINOGENS; /class: consider also NEOPLASM STAGING (see note there) but "grading" = /pathol; /etiol: consider also ONCOGENIC VIRUSES; /vet: Manual
</Description>
</Record>

上面所示的数据是从服务器传过来的一个字符串,为了大家看得清楚,我手动加了换行。现在我要把它保存成XML文件,XmlDocument doc = new XmlDoctment();
doc.LoadXml(string);(string里面保存的就是那个字符串的内容),我用这个方法保存,总出错。请问应该怎么办?请大家帮帮忙。
后来我发现好像是这个原因,那个字符串里有一些非法字符,字符串里的<?xml version="1.0" encoding="UTF-8"?>里面的又引号""和〈Description〉*/*〈/Description〉标签内容里面有斜线‘/’。
我在方法doc.LoadXml("********");中直接把那个长长地字符串输进去,报错。我把标签中的“1.0”改成‘1.0’,“UTF-8”改成‘UTF-8’,还有<Description>中的所有‘/’去掉就行了。

你为什么要用XmlDoctment来保存XML文件呢?
用下面的方法就好了:

System.IO.StreamWriter test = new System.IO.StreamWriter("c:\\a.xml");
test.WriteLine("abc");//这里换成你的字符串
test.Close();