将Integer转换为特定的String格式

时间:2016-10-13 13:33:15

标签: java json string integer

我有一个整数值,比如int id,其值由getter函数得到运行时。 我想将此id的值替换为。"VALUE",如下所示

{ "id":"VALUE", "name": "Name updated", "description": "description Updated", "active": false }

如果idString

,我找到了以下方法来替换它
String str = "myJson.json";
str.replace("\"VALUE\"", "\"id\"");

如何在上面的函数中使用int id,格式为“\”id \“”? 欢迎任何其他解决方案。

编辑:

String str = "myJson.json";

是将json内容转换为String的错误方法。

3 个答案:

答案 0 :(得分:0)

您可以使用简单的public static void main(String[] args) { String value = "{\"id\":\"VALUE\",\"name\": \"Name updated\",\"description\": \"description Updated\",\"active\": false}"; int id = 5; value = value.replaceAll("\"VALUE\"", String.valueOf(id)); System.out.println(value); } 替换来执行此操作,例如:

{{1}}

答案 1 :(得分:0)

使用org.json库可以将其分配给JSON对象并使用put方法:

JSONObject jsonObject= new JSONObject(YOUR_STRING);
String[] names = JSONObject.getNames(jsonObject);
JSONArray jsonArray = jsonObject.toJSONArray(new JSONArray(names));

 JSONObject id=  jsonArray.getJSONObject(0).getJSONObject("id");
    person.put("VALUE", id);

正则表达式替换可能会通过替换其他匹配的字符串来创建一些问题。

答案 2 :(得分:0)

我按照以下方式做了。 要替换Json文件的内容,需要将内容转换为String。我在以下功能的帮助下做到了这一点。

public static String loadJson(String jsonFileName) throws IOException {
    InputStream stream = Thread.currentThread().getContextClassLoader().getResourceAsStream(jsonFileName);
    return IOUtils.toString(stream);
}

然后声明一个String变量

String editedJson = loadJson(TEST_SET + "myJson.json");
editedJson.replace("VALUE", "" + id);