如何在Java中动态填充json文件中的变量值

时间:2019-04-05 10:33:10

标签: java json testing

我有一个看起来像的json文件

{
  name = VARIABLE1
  age = VARIABLE2
  address
  {
    street = VARIABLE3
    line = VARIABLE4
  }
}

所以现在我想用Java代码读取文件并生成VARIABLES的值并生成json并将其发布到服务器。这意味着我正在使用相同类型的数据但使用不同的值来测试服务器。

我该怎么做

2 个答案:

答案 0 :(得分:1)

您在问题中提供的不是格式正确的json。忽略这一点,您可以将格式良好的json字符串读取到JSONObject中,并根据需要替换值:

private static String getData(String name, int age, String street, String line) throws JSONException {
    JSONObject jsonObject = new JSONObject("{  name : VARIABLE1,  age : VARIABLE2,  address : { street : VARIABLE3,    line : VARIABLE4  }}");
    JSONObject address = (JSONObject) jsonObject.get("address");
    jsonObject.put("name", name);
    jsonObject.put("age", age);
    address.put("street", street);
    address.put("line", line);
    return jsonObject.toString();
}

您可以将此方法称为:

getData("Random", 20, "str", "lin");

答案 1 :(得分:0)

您可以使用包含所有所需字段的特定Java对象(带有简单的getter和setter),并使用您喜欢的任何库(例如Gson,Jackson ...)将其转换为Json。 另外,如果您的Json String非常简单,则可以手工编写并使用String.format替换变量值。