html图片名字显示不了,关于网页中图片为中文名没法显示的解决办法

网页中不少时候要用到图片,经过img标签或者滤镜来显示在页面上。而当文件名为中文名时会遇到图片没法正确加载,致使没法显示。

解决办法以下:

1:改变服务器的配置,使服务器支持utf-8来显示图片。这个通过测试是有效的,可是有一点是服务器配置修改了之后,再使用request来获取参数时,中文乱码的问题。经过System.out.print来打印出来的参数是正确的,可是赋值给String对象后却不是正确的值,再经过String对象的getBytes方法来转换之后仍然不正确。因此放弃了这个方法。java

参照:数据库

在html页面中,引用了带汉字的图片,形如%E5%9B%BE%E7%89%87%E5%90%8D%E5%AD%97.jpg,若是没有在tomcat配置URIEncoding,则没法显示。修改方法:浏览器

在tomcat的server.xml中加入URIEncoding="utf-8" (网页的编码是utf-8)

tomcat

2:我本身想的方法,可能已经有其余人想出来了。就是给中文名用utf-8编码,出来一个带有%号的字符串,对应相应的文件名。固然这还不够,由于这个文件名浏览器会自动转义解码为对应的中文名,图片仍是没法显示。因而我用了String对象的replace方法,将文件名的%所有替换为-;而后就能够正确显示图片了。缺点就是查找文件名不易于辨认识别。

编码问题的确是很让人寒心的,尤为是涉及到中文的地方。

mark了,但愿对你们有点帮助,也给本身作点笔记,积累本身学到的知识。

String name ="哈哈哈";

String str = java.net.URLEncoder.encode(name, "utf-8");

//转义后的为%E5%93%88%E5%93%88%E5%93%88

str = str.replace("%", "-");

//替换后为-E5-93-88-E5-93-88-E5-93-88

而后文件名再加上相应的扩展名便可。既能够存入数据库也能够直接保存文件名。服务器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值