在jsp或者html页面中,引用了带汉字的图片,形如<imgsrc="/目录/子目录/图片名字.jpg" />,如果没有在tomcat配置URIEncoding,则无法显示。
分析原因:
访问时报错404,tomcat默认不支持中文路径,如果要支持你需要在conf/service.xml里面的添加上URIEncoding="UTF-8",具体的URIEncoding里面是什么,这个看你的程序里面使用的什么编码,如果你用的UTF-8,这里就是UTF-8,如果是GBK,这里就是GBK
此jsp页面中:<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
解决方案:修改Tomcat安装文件下的conf文件中的server.xml文件,在Connector标签中添加编码格式:URIEncoding='UTF-8'。
修改前如图:
修改后如图:
修改后重启Tomcat,可以正常访问命名中带中文的图片。
建议:
采用中文文件名,不是一个好的习惯,尽量使用英文命名;
把你的中文进行utf-8编码 路径中尽量不要有中文,这是很比不好的编程习惯,很容易乱码;
页面已经设置 <%@page pageEncoding=”utf-8” > meta content=”text/html;charsetset=utf-8” Java显示图片的时候,文件名带有中文就显示不出来;