漂亮的JSON无法在R中正确编写

时间:2019-06-05 15:22:06

标签: r json jsonlite

我正在使用jsonlite包从R编写JSON文件。我想使用漂亮的打印,但是结果却是错误的,在文本中包含很多意外的[和\,而不是开始新的一行。

一个简单的例子:

ls <- list(fruit = c("apples", "oranges"), animals = c("cats","dogs"))
ls <- jsonlite::toJSON(ls, pretty = TRUE)

这似乎可以在R中使用:

ls

{
  "fruit": ["apples", "oranges"],
  "animals": ["cats", "dogs"]
}

但是我要写出文件吗?

jsonlite::write_json(ls,"test.json", pretty = TRUE)

然后我得到:

["{\n  \"fruit\": [\"apples\", \"oranges\"],\n  \"animals\": [\"cats\", \"dogs\"]\n}"]

我正在Windows 10 64位上使用R版本3.5.0(2018-04-23)

1 个答案:

答案 0 :(得分:0)

write_json将要序列化的对象作为参数。所以你应该这样做:

ls <- list(fruit = c("apples", "oranges"), animals = c("cats","dogs"))
write_json(ls, "test.json", pretty = TRUE)

而不是write_json(toJSON(ls), ......)