源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

jsp下显示中文文件名及绝对路径下的图片解决方法

  • 时间:2021-07-26 02:49 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:jsp下显示中文文件名及绝对路径下的图片解决方法
[b](1)jsp显示中文文件名的图片[/b] [b]方法一、将Tomcat中的server.xml文件中改为[/b]:
[u]复制代码[/u] 代码如下:
<Connector port="8080" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GBK" />
jsp页面:
[u]复制代码[/u] 代码如下:
<%@ page import="java.net.URLEncoder" %> <img src="...../.../URLEncoder.encode("图片名.jpg","GBK")"/>
[b]方法二、在tomcat的server.xml [/b]增加一个属性:URIEncoding="UTF-8" [b]修改之后为[/b]:
[u]复制代码[/u] 代码如下:
<Connector port="8080" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>
[b](2)显示绝对路径下的图片[/b] [b]思路[/b]:将本地硬盘下的文件读取文件流,使用servlet读取图片显示在jsp页面上 servlet代码:
[u]复制代码[/u] 代码如下:
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html; charset=UTF-8"); response.setContentType("image/jpeg"); //设置图片格式格式,这里可以忽略 FileInputStream fis = new FileInputStream("D:/ftp/xxx.jpg"); OutputStream os = response.getOutputStream(); try { int count = 0; byte[] buffer = new byte[1024*1024]; while ( (count = fis.read(buffer)) != -1 ) os.write(buffer, 0, count); } catch (IOException e){ e.printStackTrace(); }finally { if(os!=null) os.close(); if(fis != null) fis.close(); } }
在页面里直接引用<img src="servlet地址" /> 访问jsp页面就可以显示图片了。 我觉得方法一是最简单的了,呵呵!我已经试过方法一了,可以解决我的中文文件名不显示的问题,在些非常感谢xiaoxiaoxuewen。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部