转换字符串UTF-8

时间:2019-07-10 16:54:48

标签: java string utf-8

我可以使用哪种编码方式来转换字符串,这样我就不会出现如下特殊字符:????

我尝试过:new String(text.getBytes(“ ISO-8859-1”),“ UTF-8”);但是我得到了一些特殊字符,如上面的字符。

字符串是从文件中提取的(该文件没有暴露问题)。

这些特殊字符在执行此代码后出现,这些代码根据某些属性的值对CSV文件进行排序。

     while ((line = br.readLine()) != null) {
        if (idx == 0) {
            idx++;
            continue;
        }
        String[] arr = line.split(";");
        list.add(new Key(arr[0], arr[1], arr[2], arr[3]));
    }

    Collections.sort(list, (o1, o2) -> {
        int c = o2.url.compareTo(o1.url);
        if (c != 0) {
            return c;
        }

        c = o2.priority.compareTo(o1.priority);
        if (c != 0) {
            return c;
        }

        return o2.length.compareTo(o1.length);
    });

    for(Key row : list)
    {
        String recensione = row.review;
        String text = new String(recensione.getBytes("ISO-8859-1"),"UTF-8");
        bw.write(row.url+";"+text+";"+row.priority+";"+row.length+"\n");
    }

0 个答案:

没有答案