一、首先需要了解FileReader与InputStreamReader的区别:
1、FileReader:读取文件过程中,继承了InputStreamReader,但是并没有实现父类中带字符集参数的构造函数,所以只能按照系统默认的字符集(GBK)来解码。
比如页面的编码方式为utf-8,解码过程为utf-8->GBK->utf-8,该过程会出现损失,造成不能还原最初的字符。
2、InputStreamReader:有实现父类中带字符集参数的构造函数
二、具体实现演示
1、FileReader实现:
代码:
FileReader in = new FileReader(file);
BufferedReader br= new BufferedReader(in);
StringBuffer stringbuffer = new StringBuffer();
String s = null;
while ((s = br.readLine()) != null) {
stringbuffer.append("\n" + s);
}
String temp = new String(stringbuffer);
执行结果:
<a href="selectdir.jsp">閲嶆柊閫夋嫨鏂囦欢鐨勭洰褰�</a>
2、想到的第一种方案:(字符转码,结果解决失败)
在代码1中加转码:temp = new String(temp.getBytes("ISO-8859-1"),"utf-8");
执行结果:
<a href="selectdir.jsp">??????????????</a>
3、第二种方案:(将FileReader换成InputStreamReader)
代码:
BufferedReader br= new BufferedReader(new InputStreamReader(new FileInputStream(file),"utf-8"));
StringBuffer stringbuffer = new StringBuffer();
String s = null;
while ((s = br.readLine()) != null) {
stringbuffer.append("\n" + s);
}
String temp = new String(stringbuffer);
执行结果:
<a href="selectdir.jsp">重新选择文件的目录</a>
到此,问题终于解决
相关推荐
JSP 中文乱码问题的成因主要有两方面,一是 Java 和 JSP 文件本身编译时产生的乱码问题,二是 Java 程序于其他媒介交互产生的乱码问题。 Java 和 JSP 文件编译时产生的乱码问题 Java 和 JSP 源文件中可能包含有...
jsp页面传值中文乱码问题处理 在 JSP 页面中传值时,中文字符可能会出现乱码问题,这是由于字符编码不一致所引起的。下面将详细讲解 JSP 中文乱码种类和解决方案。 JSP 文件中文内容显示乱码 在 JSP 文件中,如果...
本主题聚焦于“jsp页面显示中文乱码解决”,这是一个典型的问题,许多开发者在处理包含中文字符的JSP页面时可能会遇到。让我们深入探讨这个问题,并提供一系列解决方案。 1. **字符编码基础** - **字符集与编码**...
该插件不仅能解决properties文件在编辑器中的乱码问题,还能确保JSP页面正确显示资源文件中的内容,而无需手动编码转换。 安装步骤如下: 1. 在Eclipse中,依次选择`Help` > `Software Updates` > `Find and ...
jsp中文乱码问题的出现是由于编码格式不一致所导致的,可以通过确保jsp文件的存储格式、解码格式和控制浏览器的解码方式一致来解决乱码问题。同时,在使用Post和Get方式提交表单时,需要指定提交的编码格式,以避免...
### 如何解决JSP页面显示乱码问题 在JSP(Java Server Pages)开发中,中文乱码问题一直是开发者常见的挑战之一。这类问题通常源于不同的编码格式不一致导致的字符集冲突。本文将针对JSP页面显示乱码、表单提交中文...
在开发Web应用时,我们经常会遇到JSP页面中文乱码的问题。这主要涉及到字符编码的设置和处理。本文将深入探讨如何解决这个问题,确保在JSP页面中正确显示中文字符。 首先,我们需要理解字符编码的基本概念。在...
jsp中文乱码问题解决 jsp中文乱码问题是jsp开发中常见的问题...jsp中文乱码问题可以通过修改jsp页面的编码方式、修改Tomcat的server.xml文件、编写Filter、使用jdk的native2ascii工具、配置数据库连接池等方法来解决。
接下来,我们将深入探讨如何解决`JSP文件上传`时的中文乱码问题。 首先,我们需要理解文件上传的基本流程。在`JSP`中,通常会使用`<form>`标签的`enctype="multipart/form-data"`属性来定义一个支持文件上传的表单...
本篇文章将详细介绍五种常见的JSP页面乱码问题及其解决方案。 1. JSP页面显示乱码 这通常是由于字符编码设置不正确造成的。JSP默认使用ISO-8859-1字符集,不支持中文字符。解决办法是在JSP文件的开头添加`...
总结来说,解决JSP页面中文乱码问题的关键在于保持字符编码的一致性,从编辑器保存文件的编码、JSP页面的编码声明、Servlet的响应编码、POST请求的参数编码,到服务器处理GET请求的编码,都需要进行适配和统一。...
针对JSP中文乱码问题,有几种有效的解决策略: **1. 在JSP文件中进行编码设置** 最直接的方法是在JSP文件头部声明正确的字符编码。例如,通过在JSP页面顶部添加`;charset=gb2312" %>`语句,可以确保页面以GB2312...
在IT行业中,尤其是在Web开发领域,JSP(JavaServer Pages)是常见的动态网页技术,而中文乱码问题一直是开发者们经常遇到的困扰。本篇文章将深入探讨JSP中文乱码问题的原因、解决策略以及预防措施。 一、乱码产生...
本文将深入解析如何在JSP中实现文件下载,并解决中文文件名乱码的问题。 首先,我们需要了解HTTP协议在处理文件下载时的角色。当用户请求下载一个文件时,服务器需要设置响应头来指示浏览器如何处理这个响应。在JSP...
本文将详细介绍如何解决JSP页面间传递变量时出现的乱码问题。 首先,我们来看方案(一),这是通过在JSP脚本中设置字符编码来解决局部乱码的方法。在JSP页面中插入以下代码: ```jsp ("GBK"); %> ("GBK"); %> ``` ...
JSP中requestgetParameter中文乱码问题是经常遇到的问题,解决这个问题有多种方法,但利用过滤器解决request中文乱码问题是其中最有效的一种方法。本文将详细介绍如何使用过滤器解决JSP中request中文乱码问题。 ...
在JSP页面中,中文乱码问题可以归结为五种情况:1.JSP页面显示乱码;2.Servlet接收Form/Request传递的参数时显示为乱码;3.JSP接收Form/Request传递的参数时显示为乱码;4.用<jsp:forward page="catalog2....
1. **页面显示乱码**:当用户通过浏览器访问JSP页面时,某些字符或字符串不能正确显示。 2. **参数传递乱码**:在表单提交或URL传参过程中,中文等非ASCII字符无法正确识别或解析。 #### 二、乱码产生的原因 1. **...