复制XML的数据到sql2005中遇到的问题,请高手帮忙啊

major_cd major_cd 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我用如下方法复制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数据的时候屏蔽怪字符,或导入的时候,只要解决这个问题就好,万分感谢


...全文
评论 22
收藏 已收藏
分享
返回顶部
major_cd
C# 111,128 成员 642,536 内容