Struts1.x系列教程(3):属性(资源)文件乱码问题的办理之道[Java编程]
本文“Struts1.x系列教程(3):属性(资源)文件乱码问题的办理之道[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
1、利用native2ascii号令使资源文件支持中文
从上篇文章中的ErrorDescription.properties文件中可以看到全部的错误提醒信息都是英文的.在客户端显示这些英文信息没有任何问题.但假如将这些英文错误提醒信息改成呼应的中错误提醒信息又会若何呢?
在改正之前,先让我们选中ErrorDescription.properties文件,单击右键,在右键菜单中挑选【Properties】菜单项,翻开属性设置对话框,在右侧所列的项目中挑选【Resource】.看一下右下角的“Text file encoding”的编码格局,假如编码格局不是UTF-8或GBK(也包含GB2312、GB18030),请将编码格局改正成UTF-8或GBK,不然无法利用MyEclipse的属性编辑器输入中文.在设置完属性文件的编码格局后,将ErrorDescription.properties文件的内容按着该文件的英文版所示改正成中文提醒信息.
中文版的ErrorDescription.properties
error.user.blank=用户名不能为空.
error.password.blank=密码不能为空.
error.password1.confirmation=密码不匹配.
error.email.blank=Email不能为空
error.email.invalid=不是一个精确的email地址
重新启动Tomcat后,在IE中输入以下的URL:
http://localhost:8080/samples/simpleValidation.jsp
当呈现信息输入界面后,点击“提交”按钮,将会显示如图1的效果.
图1
大概很多读者会感到奇特.我们已经将属性文件的编码格局改正成UTF-8或GBK了,并且所输入的中文在MyEclipse中也能正常显示,并且页面中的设置的编码格局也和属性文件中的编码格局一致,那么为什么会输出乱码呢?
产生这个问题的缘由要从Java对各种范例的文件的处理方法上说起.Java在处理*.java文件时,无论*.java文件的编码格局是UTF-8还是GBK.在利用javac.exe编译时,城市将其转换成UCS-2编码格局.因此,*.java文件就不会呈现乱码.而Java在处理属性文件时,只能处理ISO 8859-1(也称为latin-1或“西欧语言”)或UCS-2(uxxxx格局)编码格局.因此,假如在属性文件中含有其他编码格局的字符,如GBK,Java仍旧会按着ISO 8859-1编码格局来注释这些字符(假如碰到以"u开首的字符,就会按着UCS-2编码格局处理),所以就会呈现图1所示的显示效果.
以上是“Struts1.x系列教程(3):属性(资源)文件乱码问题的办理之道[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |