【发布时间】:2017-02-25 14:39:05
【问题描述】:
我有一个 JSON 文件,其中包含来自 Clojure 的 data.json 库的 JSON。数据来自人们似乎经常微笑的 Twitter。
$ cat /tmp/myfile | jq .
我明白了:
parse error: Invalid \uXXXX\uXXXX surrogate pair escape at line 1, column 14862268
违规部分是:
$ cut -c 14862258-14862269 /tmp/2017-02-23-2
79-7\ud83d",
所以,这个转义码是在一个真实的 JSON 文件中找到的,JQ 无法读取它。
echo '"\ud83d"' | jq .
Fileformat.info seems to suggest 应该成对出现:
SMILING FACE WITH OPEN MOUTH
"\uD83D\uDE03"
这真的是在 JSON 文件中查找的无效字符吗?我的 JSON 在技术上是否无效?
是否有一个简单的实用程序可以通过管道传输数据以在 JQ 之前去除这些字符?或者我可以让JQ放松一下解释吗?
【问题讨论】:
标签: json unicode clojure standards jq