在一定程度上可以说java.util.Properties类是操作“.properites文件”的工具类。
1. ".properites文件"存放的是“key-value”对.
2. 使用Properties类就要创建它的实例,例如Properties properties =new Properties();
3. 读取方法如下:
//将properties文件中所有的 key-value对放置于map中
public static Map getMap(){
Map map=new HashMap();
Properties properties =new Properties();
try{
//读取.properties文件
InputStream in=ReadProperties.class.getResourceAsStream("hotLable.properties");
//将流中读取键值对,放到properties中!
properties.load(in);
} catch (IOException e) {
System.out.println("加载热门标签失败!");
e.printStackTrace();
}
//获得properties中所有的键放于枚举类型中!
Enumeration enu=properties.keys();
while(enu.hasMoreElements()){
//获得一个key
String key=enu.nextElement().toString();
//获得 该key 对应的 value
String value=properties.getProperty(key);
//将 key 和 value 以utf-8的方式进行编码转换
try {
key=new String(key.getBytes("ISO8859-1"),"UTF-8");
value=new String(value.getBytes("ISO8859-1"),"UTF-8");
} catch (UnsupportedEncodingException e) {
System.out.println("编码失败!");
e.printStackTrace();
}
//放入map
map.put(key,value);
}
return map;
}
说道这里,还遇到一个问题,就是读取“.properties”出现中文乱码问题! 上面的解决之道,是在网上找的,肯定有更好的方式,望高人赐教!
1. ".properites文件"存放的是“key-value”对.
2. 使用Properties类就要创建它的实例,例如Properties properties =new Properties();
3. 读取方法如下:
//将properties文件中所有的 key-value对放置于map中
public static Map getMap(){
Map map=new HashMap();
Properties properties =new Properties();
try{
//读取.properties文件
InputStream in=ReadProperties.class.getResourceAsStream("hotLable.properties");
//将流中读取键值对,放到properties中!
properties.load(in);
} catch (IOException e) {
System.out.println("加载热门标签失败!");
e.printStackTrace();
}
//获得properties中所有的键放于枚举类型中!
Enumeration enu=properties.keys();
while(enu.hasMoreElements()){
//获得一个key
String key=enu.nextElement().toString();
//获得 该key 对应的 value
String value=properties.getProperty(key);
//将 key 和 value 以utf-8的方式进行编码转换
try {
key=new String(key.getBytes("ISO8859-1"),"UTF-8");
value=new String(value.getBytes("ISO8859-1"),"UTF-8");
} catch (UnsupportedEncodingException e) {
System.out.println("编码失败!");
e.printStackTrace();
}
//放入map
map.put(key,value);
}
return map;
}
说道这里,还遇到一个问题,就是读取“.properties”出现中文乱码问题! 上面的解决之道,是在网上找的,肯定有更好的方式,望高人赐教!