JSONWriter 添加新行

我想将几个 JSON 对象写入一个 txt 文件。为了获得更好的视图,我希望每个对象都位于不同的行中,并且存在我的问题:我不知道如何添加新行或分隔这些对象。这是我的代码:


       JsonObjectBuilder builder = Json.createObjectBuilder(); 

       builder.add("Item", item); 

       builder.add("Choice 1", idchoice1); 

       builder.add("Choice 2", idchoice2);

       builder.add("Choice 3", idchoice3);

       JsonObject jo = builder.build();

       try { 

            FileWriter fw = new FileWriter("SelectedChoice.txt", true); 

            JsonWriter jsonWriter = Json.createWriter(fw); 

            jsonWriter.writeObject(jo);

            jsonWriter.close(); 

            fw.close(); 

        } catch (IOException e) { 

            e.printStackTrace(); 

        }

我希望你能帮助我解决我的问题。谢谢大家!


编辑:


现在我已经看到我文件中的这个结构并不能解决我的问题。我想拆分保存在这个 txt 文件中的几个 JSON 字符串,我的代码只转换 JSON 对象中的第一个 JSON 字符串。这是我的代码:


    try {

       FileReader fr = new FileReader("SelectedChoice.txt");

       BufferedReader br = new BufferedReader(fr);


       String zeile ="";


       while((zeile = br.readLine())!=null) {

           System.out.println(zeile);

           JSONObject choice = new JSONObject(zeile);

           System.out.println(choice);

       }


       br.close();

       fr.close();

   } catch (FileNotFoundException e) {

    e.printStackTrace();

   } catch (IOException e) {

    e.printStackTrace();

   }

我希望你能再次帮助我!


繁星淼淼
浏览 112回答 1
1回答

守着星空守着你

您可以使用漂亮的打印选项:&nbsp; &nbsp;JsonObjectBuilder builder = Json.createObjectBuilder();&nbsp;&nbsp; &nbsp;builder.add("Item", item);&nbsp;&nbsp; &nbsp;builder.add("Choice 1", idchoice1);&nbsp;&nbsp; &nbsp;builder.add("Choice 2", idchoice2);&nbsp; &nbsp;builder.add("Choice 3", idchoice3);&nbsp; &nbsp;JsonObject jo = builder.build();&nbsp; &nbsp;try {&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; Map<String, Object> properties = new HashMap<>(1);&nbsp; &nbsp; &nbsp; &nbsp; properties.put(JsonGenerator.PRETTY_PRINTING, true);&nbsp; &nbsp; &nbsp; &nbsp; FileWriter fw = new FileWriter("SelectedChoice.txt", true);&nbsp; &nbsp; &nbsp; &nbsp; JsonWriterFactory writerFactory = Json.createWriterFactory(properties);&nbsp; &nbsp; &nbsp; &nbsp; JsonWriter jsonWriter = writerFactory.createWriter(fw);&nbsp; &nbsp; &nbsp; &nbsp; jsonWriter.writeObject(jo);&nbsp; &nbsp; &nbsp; &nbsp; jsonWriter.close();&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; fw.close();&nbsp;&nbsp; &nbsp; } catch (IOException e) {&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; e.printStackTrace();&nbsp;&nbsp; &nbsp; }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java