【问题标题】:How to get the character coding type of a json file?如何获取json文件的字符编码类型?
【发布时间】:2017-06-02 07:25:30
【问题描述】:

我想从 jsoncpp 获取 json 字符串的字符编码类型:UTF-8、ANSI 还是 UNICODE?如何获取 json::value 的字符编码类型?提前感谢!

【问题讨论】:

    标签: c++ unicode utf-8 ansi jsoncpp


    【解决方案1】:

    任何字符串都只是一个字节序列,符合一些基本规则(空终止符、json 的禁止符号等)。没有什么神奇的方法可以确定使用哪种编码来形成字符串,因为编码只是表示字符串二进制数据的一种方式。因此,json 字符串编码应该由 json 发行者指定(可能在文档中),或者有关它的信息应该是 json 的一部分(如果由于某种原因不同的字符串具有不同的编码)。

    【讨论】:

      【解决方案2】:

      确定字符串的字符编码是相当复杂的。请参阅this SO answer 以选择正确的应用程序。

      Apache Tika - the content analysis toolkit 可能是最先进的之一,根据以下引用:

      Apache Tika™ 工具包从一千多种不同的文件类型(例如 PPT、XLS 和 PDF)中检测并提取元数据和文本。所有这些文件类型都可以通过一个界面进行解析,使 Tika 可用于搜索引擎索引、内容分析、翻译等。您可以在下载页面上找到最新版本。

      可以使用这些库中的每一个来分析 JSON 字符串,从而生成(可能的)CharSet 可用于进一步处理。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-03-30
        • 2016-08-15
        • 2020-01-25
        • 1970-01-01
        • 2011-07-12
        • 2023-03-18
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多