java中的属性(properties)文件怎么新建

java中的属性(properties)文件怎么新建,第1张

java.util.Properties

类中有方法

Object

setProperty(String key,

String value)

Calls the Hashtable method put.

void

store(OutputStream out,

String comments)

Writes this property list (key and element pairs) in this

Properties table to the output stream in a format suitable

for loading into a Properties table using the

load(InputStream) method.

void

store(Writer writer,

String comments)

Writes this property list (key and element pairs) in this

Properties table to the output character stream in a

format suitable for using the load(Reader)

method.

void

storeToXML(OutputStream os,

String comment)

Emits an XML document representing all of the properties contained

in this table.

void

storeToXML(OutputStream os,

String comment,

String encoding)

Emits an XML document representing all of the properties contained

in this table, using the specified encoding.

1.一般在scr下面新建一个属性文件*.properties,如a.properties

然后在Java程序中读取或 *** 作这个属性文件

代码实例

属性文件a.properties如下:

name=root

pass=liu

key=value

读取a.properties属性列表,与生成属性文件b.properties。代码如下:

1 import java.io.BufferedInputStream

2 import java.io.FileInputStream

3 import java.io.FileOutputStream

4 import java.io.InputStream

5 import java.util.Iterator

6 import java.util.Properties

7

8 public class PropertyTest {

9 public static void main(String[] args) {

10 Properties prop = new Properties()

11 try{

12 //读取属性文件a.properties

13 InputStream in = new BufferedInputStream (new FileInputStream("a.properties"))

14 prop.load(in)///加载属性列表

15 Iterator<String>it=prop.stringPropertyNames().iterator()

16 while(it.hasNext()){

17 String key=it.next()

18 System.out.println(key+":"+prop.getProperty(key))

19 }

20 in.close()

21

22 ///保存属性到b.properties文件

23 FileOutputStream oFile = new FileOutputStream("b.properties", true)//true表示追加打开

24 prop.setProperty("phone", "10086")

25 prop.store(oFile, "The New properties file")

26 oFile.close()

27 }

28 catch(Exception e){

29 System.out.println(e)

30 }

31 }

32 }

getProperty/setProperty这两个方法是分别是获取和设置属性信息。

Properties类继承自Hashtable类并且实现了Map接口,也是使用一种键值对的形式来保存属性集。不过Properties有特殊的地方,就是它的键和值都是字符串类型。

*.properties文件的注释用#。

配置数据的时候是以键值对的形式,调用的时候和修改的时候也是 *** 作键值对。

2.当然还可以用*.xml来配置,位置一般在一个包下面。

例如com.styspace包下面的config.properties文件。

xml version="1.0" encoding="gbk"?>

<Accounts>

<Account type="by0003">

<code>100001</code>

<pass>123</pass>

<name>李四</name>

<money>1000000.00</money>

</Account>

</Accounts>

现在 *** 作config.properties文件。

import org.apache.commons.configuration.Configuration

import org.apache.commons.configuration.ConfigurationException

import org.apache.commons.configuration.PropertiesConfiguration

public class peropertiesLoaderTest {

public static void main(String[] args) throws ConfigurationException{

Configuration config = new PropertiesConfiguration("com/styspace/config.properties")

String name = config.getString("name")

System.out.println("name:" + name)

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11836039.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存