2016-03-21 12 views
0

I wie unten ein JSON haben: -Wie JSON-Objekt in Java konvertieren jsonReader

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

Jetzt brauche ich eine Funktion, die es wie unten automatisch umwandeln kann: -

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

Aus diesem I versuchte, die Zeichenfolge an/n anzufügen/zu verketten, aber sie wurde als neue Zeile übernommen. Ich weiß, dass es richtig ist, aber gibt es einen Weg, auf dem ich diese Ausgabe automatisch bekommen kann.

Ich habe versucht, so etwas wie unten: -

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

Jede Lösung appreicable ist.

Antwort

1

Sie benötigen ein Escape-Zeichen \ für \n

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

Dank hinzuzufügen .. Ihre Antwort hat mir lil Lösung aus einem Teil bieten .. stimmt für gleiches up .. aber es ist immer noch nicht String machen wie oben .. ich auch sb.append ("+"); –

+0

Nun, "+" existiert in Ihrem zweiten Codebeispiel existiert, da die Zeichenfolge für bessere Sichtbarkeit in separate Zeilen aufgeteilt wurde. Sie können tabs \ t und neue Zeile \ n verwenden, damit es wie das erste Codebeispiel in Ihrer Frage aussieht. –