【问题标题】:encoding errors in chinese text from xml来自xml的中文文本编码错误
【发布时间】:2012-05-03 16:10:56
【问题描述】:

我正在创建包含中文帖子的 xml 文件,它似乎可以正常工作,但我开始收到错误:

此页面包含以下错误:

第 25 列第 4165 行的错误:输入不正确的 UTF-8,指示编码! 字节:0x0B 0xC3 0xA5 0xC2 下面是出现第一个错误之前的页面渲染。

当试图打开一些生成的文件时。它引用的行包含中文字符,这仅在某些情况下发生,我的猜测是文本有时包含一些将其丢弃的字符。如何确保该字段的文本始终正确编码?我什至不明白为什么会出现这个问题。

 Public Shared xwriter As XmlTextWriter = New XmlTextWriter(xmlfile, Encoding.UTF8)

我确保正确声明了 xmltextwriter。

编辑:

问题是我使用 vb.net 并且显然它将所有内容编码为 utf-16,所以我认为这很好。问题是我收到的文本可能是双重编码或错误编码,我需要在使用前对其进行清理;这样我的 xml 才有效。

编辑:

所以如果我需要修复我的数据,我的问题是如何检测用于特定文本的编码以及如何转换为可在 xml 文件中查看并使文件有效的 utf8 格式。

【问题讨论】:

  • 我不知道你的编码问题是什么,但如果我的主要用途是存储中文文本,我永远不会使用 UTF8 - UTF16 几乎总是更有效。
  • 问题是我使用 vb.net 并且显然它将所有内容编码为 utf-16,所以我认为这很好。问题是我收到的文本可能是双重编码的,我需要在使用之前对其进行清理。
  • 您从哪里收到的文本会使其“双重编码”,这是什么意思?如果你写的数据不好,你就没有机会把它改正,所以在写之前修复你的数据

标签: xml vb.net visual-studio-2010 character-encoding


【解决方案1】:

发现源是 AnSI 格式,所以我只需要删除我正在做的所有转换,现在看起来很好。

【讨论】:

    猜你喜欢
    • 2010-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-24
    • 1970-01-01
    • 2013-07-05
    • 1970-01-01
    相关资源
    最近更新 更多