7
4

2 回答 2

0

检测一个文件的编码是一个难题,UTF很容易,因为它开头有一个BOM,否则几乎不可能正确确定编码类型。

但是,如果 XML 格式正确,它应该嵌入编码,并且解析器应该很好地处理它。我看到您正在进行从 UTF-8 到 UTF-32 的转换,这根本没有帮助,因为它只是使字符串更大一点,但是它不会更改用于对字符进行编码的代码点。

因此,您应该能够向您的 XML 解析器询问文件的编码,然后在存储和/或处理之前将其从该编码更改为 UTF-8(或 32)。

于 2012-07-23T23:16:03.297 回答
0

如果我是你,我会做两件事之一。我要么只是将没有任何编码的东西存储在数据库中(作为一个 blob),因此数据库编码根本不会进入它。

您可以做的另一件事是根本不将信息存储在数据库中。只需将它存储在一个文件中(将文件命名为一些唯一的哈希值),然后在数据库中创建一个表来存储具有 xml.xml 的文件的位置。然后,您可以直接从文件中提供 xml。

于 2012-07-23T23:16:15.423 回答