在java中读取和写入JSON文件时,字符编码(即.\u00a9)未被保留

在java中读取和写入JSON文件时,字符编码(即.\u00a9)未被保留,java,json,unicode,Java,Json,Unicode,我在java中使用json简单库读写json文件时遇到问题 我正在使用Java代码读取和更新json文件,该文件包含很少的unicode字符,例如。\u00a9、\u03A8等。当我打开文件完成写入后,上面给出的unicode字符将被一些垃圾值替换,即“UTF-8”编码的json文件 下面是我用来读写json文件的java代码 //Open for Reading File fr = new File(filepath); BufferedReader in = new BufferedRead

我在java中使用json简单库读写json文件时遇到问题

我正在使用Java代码读取和更新json文件,该文件包含很少的unicode字符,例如。\u00a9、\u03A8等。当我打开文件完成写入后,上面给出的unicode字符将被一些垃圾值替换,即“UTF-8”编码的json文件

下面是我用来读写json文件的java代码

//Open for Reading
File fr = new File(filepath);
BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(fr),StandardCharsets.UTF_8));

//Writing file
File file = new File(filepath);
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file),StandardCharsets.UTF_8));

有人能帮我找出如何保留字符编码吗

“当我打开文件时”如何打开文件?我在notepad++编辑器中打开文件,以查看json文件中的更新是否成功。当我观察到文件的其他部分,即Unicode字符时,它们会自动变为垃圾valye,即使我没有接触到该部分。有人能尽早了解这一点吗,因为我需要尽快提交解决方案以解决一个紧急的回归问题?在记事本++中打开before文件和after文件,并验证Encoding下拉菜单是否显示UTF-8。我已经这样做了,并确保已将Encoding设置为UTF-8。但仍然面临同样的问题。即使我没有碰它,我也不知道它是怎么变的。