SQl SERVER2008数据库A 表B nvarchar字段C xml字段D
A中已定义了相应XMLschema**********************************8问题描述:将C字段转换成D字段格式时
convert(xml,'<row>'+字段C+'<rows>')时出错
检查发现C字段中的一些字符是xml中的不规范字符(xml的五个不规范字符以替换)ps:以for xml explicit查看 这些字符都以 �x00之类的码值出现(还是有不少这种字符)**********************************需求:是否能一开始就将字段C转换成符合XML格式的字符串,类似convert(XMLvalue,'')
A中已定义了相应XMLschema**********************************8问题描述:将C字段转换成D字段格式时
convert(xml,'<row>'+字段C+'<rows>')时出错
检查发现C字段中的一些字符是xml中的不规范字符(xml的五个不规范字符以替换)ps:以for xml explicit查看 这些字符都以 �x00之类的码值出现(还是有不少这种字符)**********************************需求:是否能一开始就将字段C转换成符合XML格式的字符串,类似convert(XMLvalue,'')
{
StringBuilder info = new StringBuilder();
foreach (char cc in tmp)
{
if (((ss >= 0) && (ss <= 8)) || ((ss >= 11) && (ss <= 12)) || ((ss >= 14) && (ss <= 32)))
info.AppendFormat(" ", ss);//{0:X};
else info.Append(cc);
}
return info.ToString();
}将部分字符用空格替换掉未解决:不确定涵盖了所有十六进制非法字符