Javaweb程序中访问html文件的乱码问题

嘿烂泥啊 2018-06-22 01:07:34
求助帖:
编写javaweb程序,其中以过滤器统一全站编码,另设过滤器进行web资源权限管理,出现一问题:
1.访问jsp web资源时可以正确显示中文,但如果访问html资源就显示乱码,
2.将web资源管理的过滤器注释掉,html中的中文可以正常显示,直接打开html文件也可以正常显示.
求问大神应该怎么解释这种情况?


环境:tomcat
乱码情况

资源管理过滤器

统一编码过滤器

html文件
...全文
464 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
嘿烂泥啊 2018-07-29
引用 7 楼 sxsqli 的回复:
把response.getWriter()放入if判断中去


整体思路是对的,应该放在else语句中,这里已经获取了一个字符流,在最终输出html文档的时候只能采用字符流(字节流与字符流不能共存),导致如果编码格式不同的话,会引起乱码。
回复
sxsqli 2018-07-29
把response.getWriter()放入if判断中去
回复
嘿烂泥啊 2018-06-22
引用 1 楼 stacksoverflow 的回复:
tomcat的server.xml中加入编码设置
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>


谢谢兄弟,我没这样试 这应该是改动服务器默认的编码方式, 因为是在联系编码过滤器.. 只是很奇怪为什么会出现我这种情况,
回复
嘿烂泥啊 2018-06-22
引用 4 楼 lixinfu2017 的回复:
[quote=引用 3 楼 sinat_38718822 的回复:]
[quote=引用 2 楼 lixinfu2017 的回复:]
你试试把这个页面直接拖到桌面打开看看是不是乱码


你是指把html文件拖到桌面吗? 拖到桌面直接打开不是乱码[/quote]

<meta charset="utf-8"> 把你那个改成这个试试[/quote]

那个也试过,不行...
回复
聴説_er 2018-06-22
引用 3 楼 sinat_38718822 的回复:
[quote=引用 2 楼 lixinfu2017 的回复:]
你试试把这个页面直接拖到桌面打开看看是不是乱码


你是指把html文件拖到桌面吗? 拖到桌面直接打开不是乱码[/quote]

<meta charset="utf-8"> 把你那个改成这个试试
回复
嘿烂泥啊 2018-06-22
引用 2 楼 lixinfu2017 的回复:
你试试把这个页面直接拖到桌面打开看看是不是乱码


你是指把html文件拖到桌面吗? 拖到桌面直接打开不是乱码
回复
聴説_er 2018-06-22
你试试把这个页面直接拖到桌面打开看看是不是乱码
回复
两个猕猴桃 2018-06-22
tomcat的server.xml中加入编码设置
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2018-06-22 01:07
社区公告
暂无公告