社区
Java SE
帖子详情
java写properties时中文问题
mikewolf113
2005-06-23 10:36:34
小弟在用java写properties类型的文件时,插入中文会被系统自动转换成\u****的字符串,请问如何可以直接写入中文。
...全文
2798
23
打赏
收藏
java写properties时中文问题
小弟在用java写properties类型的文件时,插入中文会被系统自动转换成\u****的字符串,请问如何可以直接写入中文。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
23 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
thomas_20
2005-06-28
打赏
举报
回复
一般我作得項目中也是用ChDw(米) 的方法的
mikewolf113
2005-06-28
打赏
举报
回复
唉,其实是我们这里一些猪头,希望可以手工去修改这个文件,所以才要显示成中文
cuij7718
2005-06-27
打赏
举报
回复
恩,我和ChDw(米) 的方法一样,保留一个中文的,在部署的时候用native2ascii转换一下,这样读取的时候就不存在乱码问题,而且就直接读取就可以了,也不用考虑转码问题
jFresH_MaN
2005-06-27
打赏
举报
回复
其实这个问题就不是问题
中文保存成\u****其实就是其Unicode,java默认就是Unicode编码的
正如上面 vtable9999(肝肝肝肝) 所说,properties类里面的saveConvert会先判断这个字符是否是中文,如果是就会转换成\u****的标准unicode形式.
其实这样的形式对于我们使用中文是没有影响的,你读取出来打印一样会是正确的中文显示
如果需要看到这个文件的中文显示,你可以使用native2ascii转换过来
不过我个人认为这个是没有必要的.
OnlyFor_love
2005-06-27
打赏
举报
回复
在读取配置文件的时候,如果是中文的,那么可以把它进行一下转换,
String username = new String("我是中国人".getBytes("ISO8859_1"), "GBK")
gzhua99
2005-06-27
打赏
举报
回复
你用记事本去写中文在里面存储为.prperties文件, 你看看中文会不会显示? 当然会,但是你转到jsp 叶面里面你试一下,乱码,实际上,插入中文会被系统自动转换成\u****的字符串,这多数是UTF-8的编码,在你用resource budle 获得了这个文件,读取时,是按某个字符集来读取的,除非你自定义。 所以就算你自己写了一个文件,含中文,然后你也必须利用工具转化,我记得在jdk/bin里有个 native2ascii.exe ,他就是可以转换用的。
qingzhuang
2005-06-27
打赏
举报
回复
偷分
mikewolf113
2005-06-27
打赏
举报
回复
回 yangqu(曲洋) 我哪里是团长,分明是小兵。
大家的回复,我在试验,等完了之后,就散分。
谢谢啦,缘分啊!
ChDw
2005-06-24
打赏
举报
回复
其实使用Java本身带的都没有什么问题啦,只要你自己看着不爽。我一般都是留着一份原来中文字符的
然后使用的时候才native2ascii转换一下,不是太必要自己写一个
vtable9999
2005-06-24
打赏
举报
回复
这个问题我是这样解决的,从java.util.Properties继承一个自己的Properties类,把java.util.Properties源代码的saveConvert拿出来,将下面所示中文转换的代码注释掉即可。
转换代码:
if ((aChar < 0x0020) || (aChar > 0x007e)) {
outBuffer.append('\\');
outBuffer.append('u');
outBuffer.append(toHex((aChar >> 12) & 0xF));
outBuffer.append(toHex((aChar >> 8) & 0xF));
outBuffer.append(toHex((aChar >> 4) & 0xF));
outBuffer.append(toHex( aChar & 0xF));
} else {
if (specialSaveChars.indexOf(aChar) != -1)
outBuffer.append('\\');
outBuffer.append(aChar);
}
Ginger547
2005-06-23
打赏
举报
回复
我在写xml问题时也出现过这样的写不进去 写进去就自动修改 我查了很久发现 是MS的编码问题
不知道你说的是不是也是这样的问题
不徻写代码
2005-06-23
打赏
举报
回复
resource budle是不是没有直接写入properties文件的方法,自己用文件流往里写????
JMagic
2005-06-23
打赏
举报
回复
我知道如何吧中文读进来,要进行一次编码转换,就是吧iso-8859-1转换成gbk的就可以了,写的还不知道
wallex
2005-06-23
打赏
举报
回复
mark,学习
ChDw
2005-06-23
打赏
举报
回复
Java就是必须这样保存中文到Properties中的
如果保存和读取都是Java程序,这样你根本无需理会它,反正肯定能够读取正确的
如果是另外程序读取,则你自己写保存方法就行了,具体就是你遍历Properties中的所有内容逐行写入文件中
zhuzhichao
2005-06-23
打赏
举报
回复
我以前试过转码的方式去存储,一直都没有成功。
但读的时候,如果是中文的,可以读出来无误的结果。
就是存的时候不知道该怎样直接存成中文。
有没有高手解决过这个问题?
yangqu
2005-06-23
打赏
举报
回复
喂!这不是狼军团长吗?
这里遇到了,有趣!
yangqu
2005-06-23
打赏
举报
回复
据我所知,不行吧,必须使用\u****,不过你可以自己写一个elipse插件,来做properties的中文可视化的编辑界面。
bevin1010
2005-06-23
打赏
举报
回复
建议你用xml做配置文件,properties作配置文件是过时的作法,用xml可以指定编码方式,而且读取也不困难。
bevin1010
2005-06-23
打赏
举报
回复
你的properties文件,保存的时侯它会以操作系统默认的编码方式保存的,或者是某些编辑器默认的编码方式保存的,所以你在程序里面读取文件的时侯,要进行相应的编码转换,比如你用fileinputstream读取的时侯要指定读取流的编码方式为文件的编码方式。如果编码方式不是gb2312,你可以读取以后再转换编码为gb2312。首先有一点儿,你必须知道properties文件的编码方式!
加载更多回复(3)
JAVA
解决
Properties
文件保存
中文
乱码
解决
JAVA
读取
properties
中文
乱码
问题
Java
读
写
.
properties
文件解决
中文
乱码
问题
主要介绍了
Java
读
写
.
properties
文件解决
中文
乱码
问题
,非常具有实用价值,需要的朋友可以参考下
java
读
写
Properties
文件
中文
问题
最近做个项目要读
写
properties
文件,每次
写
入
中文
时
,用文本编辑器打开
中文
显示的是二进制字符。虽然
java
中读取出来是
中文
,不影响系统功能。但是还是感觉不爽,就想解决这个
问题
,于是去问google,这个
问题
确实相当...
Java
读
写
Properties
配置文件(
Properties
类)
Properties
Properties
基本介绍
Properties
常用方法
Properties
读取配置文件
Properties
写
入配置文件
Properties
基本介绍 专门用来读
写
配置文件的集合类,
Properties
类表示一组持久的...因为
Properties
从继承Hashtable
时
,
java
properties
保存
中文
,
Java
读
写
.
properties
文件解决
中文
乱码
问题
但是现在要是要求使用
java
直接读
写
properties
文件,就发现很多的
问题
,比如,我的
properties
文件的编码竟然不是utf-8的。或者说我压根就没考虑到这个
问题
。再比如,当
properties
文件里面有汉子的
时
候,发现读
写
的...
Java SE
62,614
社区成员
307,326
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章