【问题标题】:Wrong text encoding when parsing json data解析json数据时文本编码错误
【发布时间】:2012-08-08 11:04:18
【问题描述】:

我正在卷曲一个网站并将其写入 .json 文件;这个文件被输入到我的 java 代码中,该代码使用 json 库对其进行解析,并将必要的数据写回到一个 CSV 文件中,我稍后使用该文件将其存储在数据库中。

如您所知,来自网站的数据可能有不同的格式,所以我确保我以 UTF-8 格式读写,但我仍然得到错误的输出。

例如,Østerriksk 变为 �sterriksk

我在 Linux 中做这一切。我认为存在一些编码问题,因为相同的代码在 Windows 中运行良好,但在 Unix/Linux 中却不行。

我很确定我的 java 代码是正确的,但我无法找出我做错了什么。

【问题讨论】:

  • 我应该改变我的方法来从 shell 解析 json 文件而不是使用 java 程序吗?如果是这样,请指导我..

标签: linux json parsing shell curl


【解决方案1】:

您正在以 ISO 8859-1 格式读取数据,但文件实际上是 UTF-8。我认为文件阅读器有一个参数(或设置)应该可以解决这个问题。

另外:curl 不会关心编码。确实是您的 Java 代码有问题。

【讨论】:

  • 非常感谢您的回复。我所要做的就是在 ISO 8859-1 中读取并在 utf-8 中写入...正常工作..
【解决方案2】:

您使用的是哪种 IDE,例如,如果您使用的是 Eclipse IDE,并且没有在属性中将默认编码设置为 utf-8,就会发生这种情况。

【讨论】:

    猜你喜欢
    • 2014-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-17
    • 2020-10-04
    • 1970-01-01
    • 2019-12-04
    • 1970-01-01
    相关资源
    最近更新 更多