2016-10-13 9 views
0

私は整数値、例えばint idを持っています。その値はゲッター関数によって実行時に得られます。 私は整数を特定の文字列形式に変換します

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

を次のように私は

String str = "myJson.json"; 
str.replace("\"VALUE\"", "\"id\""); 

どのようにすることができ、idStringであれば、それを交換するには、次の方法を見つけたよう.jsonから"VALUE"の代わりにidのこの値を置き換えたいです上記の関数で "\" id \ ""の形式でint idを使用しますか? 他の解決方法は歓迎します。

EDIT:

String str = "myJson.json"; 

がStringにJSONコンテンツを取得するために間違った方法です。

+2

'str.replace( "\" VALUE \ ""、 "\" "+ ID + "\"");'?それとも簡単です: 'str.replace(" VALUE "、" "+ id);'? – assylias

答えて

0

私は次のようにしました。 Jsonファイルの内容を置き換えるには、内容をStringに変換する必要があります。私はこの機能を次のように助けてくれました。

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

、文字列変数を宣言し、

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

あなたは、単純なregexでそれを行うことができ、例えばを置き換える:

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); 
} 
+0

私はStringを持っていません。私はJsonファイルとint idを持っています。私は再び文字列をJsonファイルに変換する必要があります。私は.jsonのようなもので本当に新しいです。 :( – user3042916

+0

ここではファイル内のコンテンツを置き換える例ですが、上記の例を使用してStringを置き換えるだけです。http://stackoverflow.com/questions/3935791/find-and-replace-words-lines- in-a-filehttp://stackoverflow.com/questions/3935791/find-and-replace-words-lines-in-a-file –

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); 

正規表現は、5月を置き換えます一致する他の文字列を置き換えて問題を作成します。

+0

「jsonArray」は解決できません。 – user3042916

+0

を使用すると、toJSONArray()を使用してJSONObjectをJSONArrayに変換することができます。私の回答を編集しました。 – Karthik

関連する問題