我可以使用哪种编码方式来转换字符串,这样我就不会出现如下特殊字符:????
我尝试过: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");
}