自己写 JAVA 程序处理含有中文的属性文件(不使用native2ascii )
来源:互联网 发布:淘宝回复好评模板 编辑:程序博客网 时间:2024/05/16 06:48
对于普通的属性文件来说, 如果不含有中文,则使用 java.util.Properties 就很简单。但是如果含有中文,就会出现乱码,这是因为 Properties 是基于 unicode 来处理的。这时,我们就需要使用 jdk 自带的 native2ascii 工具进行转换:
C:/>native2ascii userInfo.properties userInfoUni.properties
但是在我们的应用程序中,对于需要经常配置的文件来说,用户可能并不想这样麻烦。因此我们考虑自己写程序来读取属性文件。程序非常简单,用 InputStreamReader 和 BufferedReader 就可以操作。我们将类编写成类似于 java.util.Properties 的操作方式。
package com.zxn.properties;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Properties;
import java.util.Set;
public class PropertiesUnicode
{
Properties props = null;
public PropertiesUnicode()
{
props = new Properties();
}
public Properties load( InputStream inStream ) throws IOException
{
try
{
InputStreamReader isr = new InputStreamReader(inStream);
BufferedReader fr = new BufferedReader( isr );
String s;
while ( (s = fr.readLine()) != null )
{
int index = s.indexOf( "=" );
if ( index > 0 )
{
String key = s.substring( 0, index );
String value = s.substring( index+1 );
props.put( key.trim(), value.trim() );
}
}
}
catch (IOException e)
{
// TODO Auto-generated catch block
//e.printStackTrace();
throw e;
}
return props;
}
public String getProperty( String key )
{
return props.getProperty( key );
}
public Set<Object> keySet()
{
return props.keySet();
}
}
- 自己写 JAVA 程序处理含有中文的属性文件(不使用native2ascii )
- 解决Java读取properties文件的中文问题的新办法(不使用native2ascii.exe及其他工具)
- 解决Java读取properties文件的中文问题的新办法(不使用native2ascii.exe及其他工具)
- 自己写的java小数点处理程序
- Java中使用native2ascii工具处理.properties文件
- 自己写的文件程序
- 中文资源文件的转码 native2ascii
- java的native2ascii命令使用
- java的native2ascii.exe使用
- java native2ascii.exe的使用
- Java程序使用属性文件的经验
- java检查文件夹中含有中文的文件(判断文件编码方式)
- 自己写的文件分割的程序
- Java读取文件中含有中文的解决办法
- Java读取文件中含有中文的解决办法
- Java读取文件中含有中文的解决办法
- Java读取文件中含有中文的解决办法
- Java读取文件中含有中文的解决办法
- JSP 解决SQLServer Unsupported method: ResultSet.last/absolute等方法的问题
- 查询某日期段之间的生日(考虑跨年)
- 两天学习Qt 编程
- 更方便地动态调用DLL导出函数
- no swt-win32-3236 in java.library.path异常解决方案
- 自己写 JAVA 程序处理含有中文的属性文件(不使用native2ascii )
- 晒伤
- 以前写的一个游戏~
- 证书
- gridview 如何修改表头显示中文
- 《影响力》
- 并发控制-当多个用户试图同时修改数据时
- 链接错误“_malloc已定义” 的解决方案
- 通用的DataTable转换为List