我有一个ja.json文件,其中包含selenium framework的键值对:
“key”:[“私はあなたを爱しています!”,
我已将文件保存为UTF-8格式。但是当我尝试从json读取值时,我得到的字符串为“?????”
我正在使用以下代码:
Object obj = parser.parse(new FileReader(filePath));
JSONObject jsonObject = (JSONObject) obj;
String text= (String) jsonObject.get(key);
String expectedValue = new String(text.getBytes("UTF-8"),"UTF-8");
我还可以做些什么来从JSON文件(或任何其他格式,如果需要)获取日文字符并发送?
答案 0 :(得分:1)
您需要使用正确的字符集读取文件,例如:
Object obj = parser.parse(new InputStreamReader(
new FileInputStream(filePath), StandardCharsets.UTF_8));
FileReader
将使用平台编码系统上的任何内容。
在使用错误的编码读取文件后,任何修复编码的尝试都将失败。你的行
String expectedValue = new String(text.getBytes("UTF-8"),"UTF-8");
没用。