Pio*_* K. 5 java parsing json utf-8
我正在尝试使用 json-simple-1.1.1 解析 JSON
public static void main(String[] args) throws ParseException, IOException{
BufferedReader buff = new BufferedReader(new FileReader("src/qqqqqqqq/json"));
String line = null;
while((line = buff.readLine()) != null){
JSONParser parser = new JSONParser();
Object obj = (Object) parser.parse(line);
JSONObject jsonObj = (JSONObject) obj;
System.out.println((String)jsonObj.get("name"));
}
}
Run Code Online (Sandbox Code Playgroud)
我的 JSON 源文件使用没有 BOM 的 UTF-8
{"name":"?"}
{"name":"?"}
{"name":"?"}
{"name":"?"}
{"name":"?"}
{"name":"ó"}
Run Code Online (Sandbox Code Playgroud)
来自 println 的输出:
Ä…
ć
?„
??
??
??
Run Code Online (Sandbox Code Playgroud)
我做错了什么?
AFileReader使用默认字符集,该字符集不能是 UTF-8。
使用
new BufferedReader(new InputStreamReader(new FileInputStream("src/qqqqqqqq/json"), "UTF-8"));
Run Code Online (Sandbox Code Playgroud)
反而。