【问题标题】:create empty object (empty brackets) with toJSON使用 toJSON 创建空对象(空括号)
【发布时间】:2013-12-05 06:22:26
【问题描述】:

我需要使用toJSON 从 R 创建一个 JSON 字符串。我的问题是 JSON 的一部分应该包含一个空的 JSON 对象{}。我以为list() 会为我做这件事:

> fromJSON("{}")
list()
> toJSON(list())
[1] "[]"

[挠头]

有人知道如何使用toJSON 获得{} 吗?我正在使用一个进行编码的库,所以不使用toJSON 的答案对我没有帮助。

谢谢!

【问题讨论】:

    标签: json r rjson


    【解决方案1】:

    有许多包具有toJSONfromJSON 函数。

    使用rjson::fromJSON'{}' 读入为长度为0list,而RJSONIO::fromJSON 读入{} 作为长度为0 的named list

    在任一包中,在命名列表上调用 fromJSON 都会满足您的需求。

    显然,RJSONIO 正在按照您的意愿行事

    RJSONIO::toJSON(RJSONIO::fromJSON('{}'))
    ## [1] '{}'
    
    rjson::toJSON(rjson::fromJSON('{}'))
    ## [1] "[]"
    

    如果你使用rjson,那么你将不得不手动设置names的长度列表0

    rjson::toJSON(setNames(rjson::fromJSON('{}'), character(0)))
    ## [1] "{}"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-25
      • 1970-01-01
      • 1970-01-01
      • 2017-09-24
      • 2021-08-10
      • 2011-04-22
      • 1970-01-01
      • 2017-09-27
      相关资源
      最近更新 更多