今天用JSP读取本地文件(中文)并显示到浏览器上时出现乱码,开始以为是JSP的问题:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
就改这里面的的charset和pageEncoding,结果改了还是错,然后直觉告诉我错误不是这里,应该是读文件的问题,改正过后果然一切正常。
<%
String spath = request.getRealPath("/");
String sfilename = "test.txt";
FileInputStream fr = null;
File file = new File(spath+sfilename);
BufferedReader brd = null;
fr = new FileInputStream(file);
brd = new BufferedReader(new InputStreamReader(fr,"UTF-8"));
StringBuffer resultBuffer = new StringBuffer();
while(brd.readLine() != null)
{
String fileline = brd.readLine();
resultBuffer = resultBuffer.append(fileline);
}
out.println(resultBuffer);