【问题标题】:Multibyte encoding in javajava中的多字节编码
【发布时间】:2011-04-28 18:46:41
【问题描述】:

我不知道如何添加多字节编码支持,而且对多字节语言知之甚少。 在研究搜索引擎时,我的应用程序会扫描所有编程语言的代码。 一些源代码的 cmets 部分可能有 CJK 编码。 为方便起见,我以 java 作为源代码示例,我的应用程序也在 java 中。

首先,我想编写测试用例来查看要索引的源代码是否具有 CJK 编码以及它是否由我的应用程序编码。 如果不包括支持,我希望我的测试失败,以便将来添加。

但我不知道如何测试它, 如何在单元测试的输入样本中输入 CJK 以及在 Java 应用程序控制台中将输出什么。

【问题讨论】:

  • 您通常想提前知道您将处理哪些编码,因为我不知道是否有一种直接的方法(如果有的话)可以确定特定文件的编码。如果您可以选择输入编码,则 UTF8 / Unicode 是最好的选择,否则您可能不得不应付用户可选择的编码。
  • 所有 Unicode 编码都是多字节的,不是吗?无论如何,不​​可能检测您拥有哪种编码。您必须被告知应该以哪种编码方式处理数据。
  • 不太清楚你在这里问什么。您是否需要帮助以特定字符编码读取文件、确定文件的字符编码、使用特定字符编码创建文件以测试您的工作,或者这些事情的某种组合?

标签: encoding multibyte cjk


【解决方案1】:

Byte Order Mark 的存在可能有用,但它们是可选的。使用 UTF 时,还有其他确定编码的方法。这可能有用:Java : How to determine the correct charset encoding of a stream。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-01
    • 2016-12-27
    • 2011-03-10
    • 2012-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多