Java 显示读取properties 乱码解决方案

 

项目开发时,在配置springmvc 校验错误提示信息时,配置到properties的中文,在前端取出时,显示为乱码,可以确定properties 配置文件已经被设为UTF-8编码,在springmvc.xml 给处理器适配器配置指定错误提示信息配置文件时,资源文件格式也是设为UTF-8的,但是调试时发现通过注解获取的properties包含中文的属性就是乱码,网上搜索了一晚上才找到解决方案,具体如下:

  1 java读取一些自写的properties配置文件,如果包含中文则需要进行转码读取或转码存储

普通的方法无非两种:
① 用java命令行工具native2ascii,这种方法是转码存储。
② java读取properties key的时候用转码new String(  key.getBytes("ISO-8859-1"),"gbk" ),这种方法是转码读取。
第一种方法优点在于编写的时候没有任何障碍,缺点是在部署的时候麻烦点,需要用命令转了以后再放到项目里,如果频繁更改文件内容的话,是挺烦的。
第二种方法优点在于编写键值对的时候没有障碍,部署时也无需再手动更改编码,但是在java代码里需要更改读取方式,而且这种读取时转码也挺费时的。
 

2 那么有没有办法既不用读取时更改代码转码,也不用存储时手工转码的方法呢

答案是有的,myeclipse自带的编辑器myeclipse properties editor就可以,在工程里用它打开properties文件(默认打开方式),然后选properties标签页,这时能看到排列整齐的键值对,只需要填值就可以了,myeclipse会自动转为ascii的编码来存储的。
 myeclipse properties editor:

 

然后双击打开查看,输入的键值对已经自动被转为ascii的编码,前端取出也不会出现乱码

 

如果没有myeclipse怎么办
用UltraEdit编辑器,编写中文配置文件prop_cn.properties,在保存后再点击另存为,文件名为prop.properties,编码选择unicode ascii就可以了
 
转自: http://blog.sina.com.cn/s/blog_74a86d520101aj24.html

转载于:https://www.cnblogs.com/Latiny/p/8917270.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值