2016-03-21 5 views
0

У меня есть JSON, как показано ниже: -Как преобразовать объект JSON в Java jsonReader

{ 
    "products": 
    { 
     "productsApp15": { 
      "code": "productsApp16", 
      "name": "productsApp16", 
      "attribute_set": "Apparel", 
      "product_type": "product", 
      "status": "active" 
      } 
    } 
} 

Теперь мне нужна функция, которая может преобразовать его, как показано ниже автоматически: -

final JsonReader jsonReader = Json.createReader(new StringReader("{\n" + 
       " \"products\":\n" + 
       " {\n" + 
       "  \"productsApp13\": {\n" + 
       "   \"code\": \"productsApp13\",\n" + 
       "   \"name\": \"productsApp13\",\n" + 
       "   \"attribute_set\": \"Apparel\",\n" + 
       "   \"product_type\": \"product\",\n" + 
       "   \"status\": \"active\"\n" + 
       "   }\n" + 
       " }\n" + 
       "}")); 

Для этого я попытался добавить/конкатенировать строку с/n, но она была рассмотрена как новая строка. Я знаю, что это правильно, но есть ли способ, с помощью которого я могу получить этот вывод автоматически.

Я пытался что-то, как показано ниже: -

 String sCurrentLine; 
     StringBuilder sb = new StringBuilder(""); 
     br = new BufferedReader(new FileReader("./src/test/com/testdata/HTTPHelperTest.csv")); 

    while ((sCurrentLine = br.readLine()) != null) { 
     sb.append(sCurrentLine); 
     sb.append("\n"); 
    } 
    br.close(); 
    System.out.println("Value Json"+sb); 

Любое решение appreicable.

ответ

1

Вы должны добавить экранирующий символ \ для \n

while ((sCurrentLine = br.readLine()) != null) { 
     sb.append(sCurrentLine); 
     sb.append("\\n"); 
    } 
+0

Спасибо .. Ваш ответ есть предоставить мне лил решение одной стороны .. голосовать за тот же .. но это еще не делает строку, как и выше .. Я также sb.append ("+"); –

+0

Ну, в вашем втором примере кода существует «+», поскольку строка была разделена на отдельные строки для лучшей видимости. Вы можете использовать tabs \ t и новую строку \ n, чтобы сделать его похожим на первый пример кода в вашем вопросе. –

Смежные вопросы