用Java解码JSON文件

用Java解码JSON文件,java,jsondecoder,Java,Jsondecoder,我试图用UTF-8解码JSON格式的JSON文件 但它没有印刷价值 JSONParser jsonParser = new JSONParser(); FileReader file = new FileReader("C:/Users/aab6cob/Desktop/jsonFile/170902_K0_RUCd_ML_F4974.txt.insights-json"); BufferedReader filBufferedReader = new BufferedReader(f

我试图用UTF-8解码JSON格式的JSON文件

但它没有印刷价值

  JSONParser jsonParser = new JSONParser();
  FileReader file = new FileReader("C:/Users/aab6cob/Desktop/jsonFile/170902_K0_RUCd_ML_F4974.txt.insights-json");
  BufferedReader filBufferedReader = new BufferedReader(file);

  String st;
  while((st=filBufferedReader.readLine())!=null){
    byte[] tempByte = st.getBytes("UTF-8"); 
    String tempString = new String(tempByte);
    System.out.println(tempString);
  }

首先,不要使用
.json
文件格式,它只是一个简单的文本文件。因此,您只需读取文件并使用任何fileStream等将其写入任何文本文件。。这与读写计划文本文件非常相似

但是,如果您想将JSON从文件加载到JSON对象中,我建议您阅读


祝你好运。

如果你想读取带有特定编码的文件,你不能使用
FileReader
<代码>文件阅读器使用默认编码,这取决于系统设置。您可以使用InputStreamReader的
InputStreamReader(InputStream in,String charsetName)
构造函数来实现相同的功能。 还有代码中的两行

byte[] tempByte = st.getBytes("UTF-8"); 
String tempString = new String(tempByte);

应该删除,因为您只是获取一个字符串,将if转换为字节,然后再次转换为字符串,这毫无意义。最后,JSON文件只是一个文本文件。阅读更多关于java的I/O流字符编码的信息

阅读文件时需要解码是它们的任何参考