`

jsp页面显示文件内容有中文乱码问题

阅读更多

一、首先需要了解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页面显示中文乱码解决.rar

    jsp页面显示中文乱码解决.rar

    Struts2资源文件在jsp页面中显示乱码解决

    Struts2资源文件在jsp页面中显示乱码解决

    5种JSP页面显示为乱码的解决方法

    5种JSP页面显示为乱码的解决方法

    JSP读取TXT文件并显示

    工程作用:读取本地TXT文件并显示在JSP页面上 运行环境:Tomcat, JAVA EE6.0,搜狗高速浏览器 程序作者:Roy Liu 直接添加到MyEclipse中即可运行。 源程序内有代码注释。 已知BUG: 1、未输入文件地址时,会报错;...

    多文件上传例子(解决中文乱码)

    多文件上传例子,彻底解决中文乱码问题了。总结中文乱码问题如下: 1、所有页面都用UTF-8。 2、写过滤器,设置request.setCharacterEncoding("UTF-8")。 3、javascript脚本里用encodeURI(str)。 4、适当的时候,在...

    JSP中文乱码问题综述,中文乱码解决大全

    中文乱码解决大全,表单使用Post方式提交后接收到的乱码问题,表单get提交方式的乱码处理方式,上传文件时的乱码解决,Java代码关于url请求,接受参数的乱码,关于jsp在MyEclipse中打开的乱码问题,关于html页面在eclipse...

    真正解决jspSmartUpload组件上传下载文件时中文乱码问题

    真正解决jspSmartUpload组件上传下载文件时中文乱码问题。以前在网上也找过!!!下载了些,都没能解决中文乱码问题!自己改了源代码,并做成jar包,直接用就可以。 另,我把File()类 改成了 SmartFile()类。详情请...

    servlet中文乱码问题

    Servlet + Tomcat 中文乱码的解决方法,浏览器把Unicode字符转换为GBK字符,这样页面的内容和浏览器的显示模式都设成了GBK,就不会乱码了

    JSP MySQL插入数据时出现中文乱码问题的解决方法

    主要介绍了JSP MySQL插入数据时出现中文乱码问题的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    如何解决Tomcat下中文乱码问题?

    现在将常见的乱码问题分为JSP页面显示中文乱码、表单提交乱码两类。 1)JSP页面中显示中文乱码 在JSP文件中使用page命令指定响应结果的MIME类型,如;charset=gb2312" %&gt;

    如何配置Filter过滤器处理JSP中文乱码

    配置Filter过滤器处理JSP中文乱码 参考Tomcat服务器目录webapps的examples示例 简单配置步骤: 1.在项目web.xml文件添加过滤器标记和; 2.实现过滤器代码; 3.对Tomcat服务器conf目录里的Server.xml文件配置...

    jsp include 乱码问题的解决

    jsp include 乱码问题的解决方法! 希望能够解决你的问题!

    jsp页面调用js,弹出信息乱码

    jsp页面调用js,弹出信息乱码;jsp页面调用js,弹出信息乱码

    Jsp乱码问题解决2

    1 最基本的乱码问题。 这个乱码问题是最简单的乱码问题。一般新会出现。就是页面编码不一致导致的乱码。 2 表单使用Post方式提交后接收到的乱码问题 3 表单get提交方式的乱码处理方式。 4 上传文件时的乱码解决 ...

    彻底解决fckeditor(jsp版)上传中文图片乱码问题

    彻底解决fckeditor(jsp版)上传中文图片乱码问题,我这里用的编码是utf-8的,这里用的fckeditor 是2.6的,fckeditor.java包是2.3的,经过我修改ConnectorServlet.java和SimpleUploaderServlet.java两个文件,重新生成...

    分享JSP中文乱码解决方法

    在JSP页面中,中文显示乱码有两种情况:一种是HTML中的中文乱码,另一种是在JSP中动态输出的中文乱码。 先看一个JSP程序: &lt;&#37;@ page language=java import=java.util.* %&gt; &lt;html&gt; &lt;head&gt; &lt;...

    jsp中文乱码 jsp mysql 乱码的解决方法

    当使用JSP页面将中文数据添加到MySql数据库中的时候发现变为乱码,或者从mysql中读取中文的时候出现乱码,这些问题根源都是由于字符编码不一致造成的。要知道病源是什么我们才能对症下药,所以我将问题产生的过程...

    JSP+ MySQL中文乱码问题post提交乱码解决方案

    当提交的数据中含有中文(比如变量姓名的值为中文)时,mysql_insert.jsp页面上显示新增的那条记录中的相应中文(姓名的值)乱码

    myEclipse乱码解决办法

    在Myeclipse导入一个项目,有中文乱码问题,解决方法如下: 一、将整个project设置编码UTF-8(UTF-8可以最大的支持国际化) windows-&gt;Preferences-&gt;general-&gt;Workspace-&gt;Text file encoding-&gt;Other框中的Text ...

    jsp include文件时的一个乱码解决方法

    @ include %&gt;方式来包含这个文件,主要是这样能够被包含页面会跟包含页面在编译时被编译成一个文件,里面的变量可以相互通用,而&lt;jsp&gt;方式则会分别编译,变量不能相互使用。   而在tomcat4.x版本中,只要在包含页面...

Global site tag (gtag.js) - Google Analytics