JSP 为什么我使用的是字符流还会出现乱码
文本的编码是utf-8
<%@page language="java" import="java.util.*" pageEncoding="utf-8" %>
<%@page import="java.io.*"%>
create Directory
<%
try{
FileReader fileReader=new FileReader("e://JSP/ch07/contentread.txt");
BufferedReader bufferedReader=new BufferedReader(fileReader);
File file=new File("e://JSP/ch07/contentwrite.txt");
if(!file.exists()){
file.createNewFile();
}
FileWriter fileWriter=new FileWriter(file);
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
String str=null;
while((str=bufferedReader.readLine())!=null){
bufferedWriter.write(str);
bufferedWriter.newLine();
bufferedWriter.flush();
}
bufferedWriter.close();
bufferedReader.close();
}catch(FileNotFoundException e){
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
}
%>
read文件你的打开方式是UTF-8
write文件你的打开方式是ANSI
建议再写文件的时候制定文件编码,参考如下:
https://blog.csdn.net/lhdxflwb/article/details/122554394
如果body里边写正常的中文显示没问题,那就是你读取写入文字的编码跟你jsp规定的代码不一致,设置bufferedWriter的编码格式为utf-8试试看
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!A.request.setCharacterEncoding("UTF-8")
B.request.setCharset(“UTF-8”)
C.request.setContentType(“UTF-8”)
D.request.setEncoding(“UTF-8”)正确答案:A
设置UTF-8