.№爱の冰封
开始懂得逢场作戏,虽然有许多只是雾水情缘; 不过没关系了,哪来那么多一生一世
BlogJava
首页
新随笔
联系
聚合
管理
posts - 14, comments - 37, trackbacks - 0
JAVA读取Properties(配置文件)工具类
以下这个类是在JAVA中如何读取Properties配置文件:
1
package
cn.com.cinda.rtx.common;
2
3
import
java.io.BufferedReader;
4
import
java.io.FileReader;
5
import
java.io.IOException;
6
import
java.util.HashMap;
7
import
java.util.Properties;
8
import
java.util.
*
;
9
import
java.io.
*
;
10
11
12
public
class
IniReader
{
13
protected
LinkedHashMap sections;
//
使用
14
15
public
IniReader()
{
16
super
();
17
sections
=
new
LinkedHashMap();
18
}
19
20
public
LinkedHashMap getSections()
{
21
return
sections;
22
}
23
24
public
LinkedHashMap getSection(String sectionName)
{
25
if
(sections
!=
null
)
{
26
return
(LinkedHashMap) sections.get(sectionName);
27
}
else
{
28
return
null
;
29
}
30
}
31
32
public
String get(String sectionName, String key)
{
33
Map section1
=
(Map) sections.get(sectionName);
34
if
(section1
==
null
)
{
35
return
""
;
36
}
37
return
(String) section1.get(key);
38
}
39
40
41
public
void
load(String fileName)
throws
FileNotFoundException
{
42
InputStream is
=
null
;
43
try
{
44
is
=
new
FileInputStream(fileName);
45
load(is);
46
}
catch
(IOException e)
{
47
e.printStackTrace();
48
}
finally
{
49
if
(is
!=
null
)
{
50
try
{
51
is.close();
52
}
catch
(IOException e1)
{}
53
}
54
}
55
}
56
57
public
void
load(InputStream is)
throws
IOException
{
58
BufferedReader reader
=
new
BufferedReader(
new
InputStreamReader(is));
59
String line
=
null
;
60
String lastSectionName
=
null
;
61
while
((line
=
reader.readLine())
!=
null
)
{
62
line
=
line.trim();
63
if
(line.startsWith(
"
#
"
))
{
64
continue
;
65
}
66
if
(line.startsWith(
"
[
"
)
&&
line.endsWith(
"
]
"
))
{
67
lastSectionName
=
line.trim().substring(
1
, line.length()
-
1
);
68
sections.put(lastSectionName,
new
LinkedHashMap());
//
创建一个section
69
}
else
if
(line.length()
==
0
)
{
70
continue
;
71
}
else
{
72
if
(lastSectionName
!=
null
)
{
73
Map section
=
(Map) sections.get(lastSectionName);
74
int
index
=
line.indexOf(
'
=
'
);
75
String key
=
index
>
0
?
line.substring(
0
, index) : line;
//
如果没有等号,直接做key和value
76
String value
=
index
>
0
?
line.substring(index
+
1
) : line;
77
section.put(key, value);
78
}
79
}
80
}
81
}
82
83
public
static
void
main(String[] args)
{
84
IniReader iniReader
=
new
IniReader();
85
try
{
86
FileInputStream fileInputStream
=
new
FileInputStream(
"
/etc/portalconf/jmsconfig.property
"
);
87
iniReader.load(fileInputStream);
88
Map sections
=
iniReader.getSection(
"
serverconf
"
);
89
java.util.Iterator it
=
sections.keySet().iterator();
90
while
(it.hasNext())
{
91
String key
=
(String) it.next();
92
System.out.println(key
+
"
=
"
+
sections.get(key));
93
}
94
95
}
catch
(IOException e)
{
96
e.printStackTrace();
97
}
98
}
99
}
100
101
102
posted on 2007-06-26 14:34
冰封的爱
阅读(1680)
评论(0)
编辑
收藏
所属分类:
技术
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
相关文章:
使用Axis开发Web Service程序
java中的日期格式化
在linux和unix中指定JVM内存大小
JAVA读取Properties(配置文件)工具类
JAVA加密解密工具类
扩展ClassLoader定制类装载器
java日期比较
java中生成32位随机ID
Linux下常用压缩格式的压缩与解压方法
<
2024年11月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(3)
给我留言
查看公开留言
查看私人留言
随笔档案
2007年9月 (1)
2007年8月 (6)
2007年7月 (3)
2007年6月 (3)
文章分类
J2EE(64)
Linux(8)
常用工具(9)
开源项目(3)
技术(9)
文章档案
2009年1月 (1)
2008年4月 (1)
2008年1月 (1)
2007年10月 (2)
2007年9月 (2)
2007年8月 (1)
2007年7月 (73)
2007年6月 (12)
相册
冰封的相册
搜索
最新评论
1. re: 自动生成32位永不重复ID
444
--22
2. re: 根据拼音首字母查询人名(C#版)[未登录]
好用,谢谢
--123
3. re: java中生成32位随机ID [未登录]
手术
--想
4. re: Jocky混淆JAVA代码(保护你的JAVA项目)
求支持 JDK 1.7的版本
--pro
5. re: Jocky混淆JAVA代码(保护你的JAVA项目)
8530
--ss
阅读排行榜
1. 学会放下(640)
2. 项目人生(391)
3. IT外包值得体验(388)
4. 小型软件公司如何做大(383)
5. 2007年7月每日一句汇总(1)(354)
评论排行榜
1. 学会放下(0)
2. 2007年7月份 每日一句汇总(2)(0)
3. 2007年7月每日一句汇总(1)(0)
4. 英语每日一句(0)
5. IT外包值得体验(0)