代码没问题,检测一下你的xml文件是否是真正的utf-8编码的文件,不要说,xml文件内容里声明是utf-8编码就是utf-8编码。或者把encoding="UTF-8",改为encoding="GBK",看一下乱不乱码,如果不乱码,说明你的xml文件其实是gbk编码。
/*
把你的代码贴出来吧,好知道自己错在什么地方, 这样印象也深刻一些,才能真的弄懂了,
学习java不建议做伸手党
------------------------------------------------
*/
BufferedReader br = new BufferedReader(new InputStreamReader(
new FileInputStream(new File("filepath")), "UTF-8")); // read encoding
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(new File("filepath")), "UTF-8")); //writer encoding
String str = null;while ((str = br.readLine()) != null) {
println(str);
bw.write(str);
bw.newLine();// 换行
bw.flush();
str = br.readLine();
}
br.close();
bw.close();
String tag = "UTF-8";
String str = "读取乱码";
String tempStr = new String(str.getBytes("ISO-8859-1"), tag);
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(
fileName), tag));