小编Max*_*lov的帖子

在 Java 中将 JSON 数据硬编码为字符串的更好方法

我需要将 JSON 数据作为字符串保存在代码中以进行单元测试。例如,

{
    "one": 1,
    "two": 2
}
Run Code Online (Sandbox Code Playgroud)

我知道我可以从文件或属性中读取这些数据,但我需要将它们保留为字符串。目前,我有这样的事情:

String s = "{\n" +
           "    \"one\": 1,\n" +
           "    \"two\": 2\n" +
           "}";
Run Code Online (Sandbox Code Playgroud)

但它看起来很难看,而且在更复杂的数据中,很难读取和修改它。

我可能会摆脱它们\n,因为它们并不是真正需要的,而是为了稍后更好地查看这些数据:

String s = "{" +
           "    \"one\": 1," +
           "    \"two\": 2" +
           "}";
Run Code Online (Sandbox Code Playgroud)

另外,我可以使用引号替换的技巧:

String s = ("{\n" +
            "    'one': 1,\n" +
            "    'two': 2\n" +
            "}").replace('\'','"');
Run Code Online (Sandbox Code Playgroud)

或者同时将两者结合起来。

有没有更好的方法在 Java 中将 JSON 数据表示为 a String

例如,在Python中,有三引号:

s = """
{
    "one": 1,
    "two": 2
}
"""
Run Code Online (Sandbox Code Playgroud)

java string json multilinestring java-text-blocks

6
推荐指数
1
解决办法
5061
查看次数

标签 统计

java ×1

java-text-blocks ×1

json ×1

multilinestring ×1

string ×1