我需要使用toJSON
从R创建一个JSON字符串。我的问题是JSON的一部分应该包含一个空的JSON对象{}
。我以为list()
会为我做这件事:
> fromJSON("{}")
list()
> toJSON(list())
[1] "[]"
[划痕头]
有人知道如何使用{}
获取toJSON
吗?我使用的是执行编码的lib,所以不使用toJSON
的答案对我没用。
谢谢!
答案 0 :(得分:5)
有许多软件包具有toJSON
和fromJSON
功能。
使用rjson::fromJSON
时,'{}'
会以list
的长度0
读入,而RJSONIO::fromJSON
会将{}
作为{named list
读入1}}长度为0。
在任一软件包中,在命名列表上调用fromJSON
都可以执行您想要的操作。
显然,RJSONIO
正在按照您的意愿执行
RJSONIO::toJSON(RJSONIO::fromJSON('{}'))
## [1] '{}'
rjson::toJSON(rjson::fromJSON('{}'))
## [1] "[]"
如果您使用rjson
,则必须手动设置names
0
rjson::toJSON(setNames(rjson::fromJSON('{}'), character(0)))
## [1] "{}"