最近在开发遇到需要将ASCII码进行编码的文件展示到前端页面上,但是直接提取内容会出现乱码问题,按照下面的方法则解决问题
response.setCharacterEncoding("utf-8");
String path = UrlUtil.getUrlUtil().getMessage_i2();
File file = new File(path);
StringBuffer sb = new StringBuffer();
InputStreamReader isr = null;
BufferedReader br = null;
if(file.isFile() && file.exists()){
try {
isr = new InputStreamReader(new FileInputStream(file),"GBK");
br = new BufferedReader(isr);
String lineTxt = null;
while((lineTxt = br.readLine()) != null){//按行输出读取的内容
sb.append(lineTxt+"<br/>");
}
} catch (Exception e) {
sb.append("文件找不到!");
}
}else{
sb.append("文件找不到!");
}
System.out.println(sb.toString());
response.getWriter().write(sb.toString());
上面红色的字体是在取流时按照"GBK"编码取流