复制XML的数据到sql2005中遇到的问题,请高手帮忙啊
我用如下方法复制XML的数据到sql2005中,
string xmlFilename;
xmlFilename = sXMLFile;
DataSet newDataSet = new DataSet();
foreach ( DataTable t in newDataSet.Tables)
{
t.BeginLoadData();
}
newDataSet.ReadXml(xmlFilename);
foreach (DataTable t in newDataSet.Tables)
{
t.EndLoadData();
}
现在遇到问题,就是 在数据中有怪字符,就会newDataSet.ReadXml(xmlFilename)的时候抱错,
“ ”(十六进制值 0x1C)是无效的字符。 行 31882,位置 112。
<scaddress><![CDATA[哈尔滨 ]]></scaddress>
哈尔后面的这个 就是那个怪字符
XML是如下方法生成的
set @bcp='bcp "select row from ##B2BXMLTemp order by id asc" queryout "'+@FilePath+'" -c -S'+@sqlserver+' -U'+@UserName +' -P'+@PassWord
exec master..xp_cmdshell @bcp
请问, 有什么方法可以解决这个问题?不论在导出XML数据的时候屏蔽怪字符,或导入的时候,只要解决这个问题就好,万分感谢