如何过滤字符串中的非法字符? 从别的程序中传给我一个字符串,是XML格式,我加载却报非法字符,而查看字符串又看不出什么不正常,我试着对字符串进行转码也无效,这种情况该如何处理?哪位知道如何过滤掉非法字符? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 那应该是传过来的XML字符串有问题..和非法字符没有关系 对,是有问题,但我怎么能过滤掉他的非法字符,那边是一个CB写的DLL,我是用C#调的,那边也查不出什么地方加了非法字符,但里面肯定有,单看却看不出来 传过来的XML串让他们处理成UTF-8编码或是XML结点用:<![CATA[ 数据放这里 ]]>这种格式 看看具体内容XML字符再转化获取数据。 System.Xml.XmlDocument xd= new System.Xml.XmlDocument(); xd.LoadXml(xml); foreach (System.Xml.XmlNode node in xd.ChildNodes) { } 其实DLL那边也不知道怎么加进去了乱码,也查不出问题了,编码换成UTF-8了也不行,其实是他把他提到的数据,组成了一个XML格式的DataSet数据集,把字符拷出来,放到文件里,用IE打开XML文件一点没有错误,但如果我用dataSet加载,就报非法字符串,郁闷。 用IE打开这个文件什么都很正常,用XMLDocument载入也正常,但用DataSet载入却报错,就报非法字符串。查看文件,没有任何不对。郁闷。 可以先用Dataset.ReadXMLSchema()试下看看有没有问题,如果有,那应该是因为DataTable的column 里面含有非法字符 你调试的时候把得到的那段字符 复制下来:string xml = "得到的XML字符";xd.LoadXml("得到的XML字符"); 然后再去试 是不是有问题............我前段时间就遇到了一个问题 就是解密一个xml文件,得到XML字符串, 然后用xd.LoadXml(xml),总是通不过..报什么错忘记了...调试的时候把那段字符拷贝下来,放到xd.LoadXml("XML字符"); 有可以通过后来网上查了下 xml.Trim(); 加了这个东西 可以了 ,不知道是什么原因,但是前后又没有空格....你也试一下... LoadXml改成load 应该就可以了 XMLDocument载入也正常,但用DataSet载入报错,Dataset.ReadXMLSchema()不出错,无奈,转换成XML,自已解析再生成数据集。 C# 如何实现点一个按钮可以弹出我的文档 请教 dataGridView中的数据保存到数据库中 请问net中这个编码怎样转化string? 导出Excel,有关DLL的问题 那位帅哥帮忙把这段JS MD5加密的脚本 写成C#的 关于vs打包的问题 求一个sqlserver视图语句,及操作的方法,急急急 谁可以提供一个xde for vs2003啊,分不够可以再加 一个会被取消的问题,c#和Visual C#.NET是不是一个东西 求C# 制作硬盘数据恢复源码,或是示例。 在使用netremoting方式的中间层里可否使用reference方式传入自定义结构体
或是XML结点用:
<![CATA[ 数据放这里 ]]>这种格式
XML字符再转化获取数据。
System.Xml.XmlDocument xd= new System.Xml.XmlDocument();
xd.LoadXml(xml);
foreach (System.Xml.XmlNode node in xd.ChildNodes)
{
}
后来网上查了下 xml.Trim(); 加了这个东西 可以了 ,不知道是什么原因,但是前后又没有空格....你也试一下...