繁体   English   中英

无法从 JSON 接收正确格式的字符串

[英]Can't receive proper format of String from JSON

我正在尝试在.jsp 文件中读取 my.json 文件。 我想读的文字是(来自波兰语):“wewnętrzny”。 而不是它,我收到类似的东西:“wewn??trzny”。

我正在使用的代码似乎不起作用:

try {
        JSONObject jsonObject = (JSONObject) parser.parse(new FileReader(FILE_PATH)); 
        JSONArray tab = (JSONArray) jsonObject.get("tab");

        for (int i = 0; i < tab.size(); i++) {
            JSONObject jsonObjectRow = (JSONObject) tab.get(i);
            
            byte[] raw =  jsonObjectRow.get("a").toString().getBytes(ISO_8859_1);
            String a = new String(raw, UTF_8);
            out.println(a);
        }     
    } 
    catch (FileNotFoundException e) {
        e.printStackTrace();
    } 

我尝试了几种编码和所有解决方案: https://www.baeldung.com/java-string-encode-utf-8 不幸的是,没有任何东西使它正常工作。

我该如何解决这个问题?

好的,我想通了!

在代码中它应该只是:

 String a = jsonObjectRow.get("a").toString();

并且文件应该以windows-1250编码保存!

感谢@marcinj 的建议!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM