Java读取properties文件中文乱码问题的解决

本文介绍如何使用Java读取包含中文字符的properties文件,并通过native2ascii工具进行文件编码转换,确保Java程序能够正确识别和显示中文内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java直接读取properties文件时,中文会是乱码,这时可以用Java/jdk1.x.x/bin/native2ascii.exe工具。
例如,把f1.properties转换成f2.properties。

在cmd的当前目录下输入

Cmd代码 复制代码
  1. native2ascii -encoding gbk f1.properties f2.properties  


转换前f1.properties:

Properties代码 复制代码
  1. #编号=描述   
  2. cn=中国  


转换后f2.properties:

Properties代码 复制代码
  1. #/u7f16/u53f7=/u63cf/u8ff0   
  2. cn=/u4e2d/u56fd  



这样Java程序就可以正确识别中文了!

Java代码 复制代码
  1. Properties prop=new Properties();         
  2. InputStream inputStream=new FileInputStream("E://f2.properties");         
  3. prop.load(inputStream);         
  4. String title=prop.getProperty("cn");      
  5. System.out.println(title);  
	Properties prop=new Properties();      
	InputStream inputStream=new FileInputStream("E://f2.properties");      
	prop.load(inputStream);      
	String title=prop.getProperty("cn");   
	System.out.println(title);


转换前运行结果:

控制台代码 复制代码
  1. ???ú  

转换后运行结果:

控制台代码 复制代码
  1. 中国  
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值