Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JSONWriter添加新行_Java_Json_Filewriter - Fatal编程技术网

Java JSONWriter添加新行

Java JSONWriter添加新行,java,json,filewriter,Java,Json,Filewriter,我想将几个JSON对象写入一个txt文件。为了获得更好的视图,我希望每个对象位于不同的线中,这是我的问题:我不知道如何添加新线或分隔这些对象。 这是我的密码: JsonObjectBuilder builder = Json.createObjectBuilder(); builder.add("Item", item); builder.add("Choice 1", idchoice1); builder.add("Choice

我想将几个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();
   }

我希望你能再次帮助我

您可以使用“漂亮打印”选项:

   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 { 
        Map<String, Object> properties = new HashMap<>(1);
        properties.put(JsonGenerator.PRETTY_PRINTING, true);
        FileWriter fw = new FileWriter("SelectedChoice.txt", true);
        JsonWriterFactory writerFactory = Json.createWriterFactory(properties);
        JsonWriter jsonWriter = writerFactory.createWriter(fw);
        jsonWriter.writeObject(jo);
        jsonWriter.close(); 
        fw.close(); 
    } catch (IOException e) { 
        e.printStackTrace(); 
    }
JsonObjectBuilder=Json.createObjectBuilder();
建造商。添加(“项目”,项目);
添加(“选项1”,idchoice1);
添加(“选项2”,idchoice2);
添加(“选项3”,idchoice3);
JsonObject jo=builder.build();
试试{
映射属性=新的HashMap(1);
properties.put(JsonGenerator.PRETTY_PRINTING,true);
FileWriter fw=新的FileWriter(“SelectedChoice.txt”,true);
JsonWriterFactory writerFactory=Json.createWriterFactory(属性);
JsonWriter=writerFactory.createWriter(fw);
jsonWriter.writeObject(jo);
jsonWriter.close();
fw.close();
}捕获(IOE){
e、 printStackTrace();
}