Xml '';,十六进制值0x19是否为无效字符?

Xml '';,十六进制值0x19是否为无效字符?,xml,vb.net,serialization,datatable,Xml,Vb.net,Serialization,Datatable,我收到这个错误: '',十六进制值0x19,是无效字符 将数据表序列化为XML时,然后将此XML反序列化回数据表 这是一个已经工作了几个月的东西,你知道这个角色现在是如何突然进入XML的吗 在VB.NET中工作。下面是完成这项工作的代码 公共函数ConvertDataTableToXML(ByVal tbl作为DataTable)作为字符串 tbl.TableName=“gv” Dim writer作为新系统。IO.StringWriter() tbl.WriteXml(writer,XmlWr

我收到这个错误:

'',十六进制值0x19,是无效字符

数据表
序列化为XML时,然后将此XML反序列化回
数据表

这是一个已经工作了几个月的东西,你知道这个角色现在是如何突然进入XML的吗

在VB.NET中工作。下面是完成这项工作的代码

公共函数ConvertDataTableToXML(ByVal tbl作为DataTable)作为字符串
tbl.TableName=“gv”
Dim writer作为新系统。IO.StringWriter()
tbl.WriteXml(writer,XmlWriteMode.WriteSchema,False)
Return writer.ToString()
端函数
公共函数ConvertXMLToDataTable(ByVal xml作为字符串)作为DataTable
Dim tbl作为新数据表
Dim xmlReader As xmlReader=xmlReader.Create(新的StringReader(xml))
tbl.ReadXml(xmlReader)
返回tbl
End Function'此函数抛出错误。
我也尝试使用正则表达式去除无效字符,但当表尝试按照读取XML时,仍然收到错误,这些:


是媒体的unicode结尾,不在允许的范围内。

a)您使用的是哪种语言。b) XML是如何生成的?这将是开始查找字符的地方。我编辑了我的问题以回答您的问题。我希望错误是由于数据表中的数据造成的。如果表不是太大,您可以检查它,看看是否可以找到冒犯的角色。这类问题可能很难在IME中运行。它的可能副本是一个负号,它不是有效的xml字符。见:
Char ::= #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF]