java:Properties属性文件概念

java:Properties属性文件概念

在java之前的国际化程序中提出了一个属性文件的概念,属性文件的后缀是:*。properties,那么在java中提供了意个属性文件的专门操作类,Properties,此类的定义如下:

public class Properties extends Hashtable<Object, Object>

此类是Hashtable的子类,所有属性都是字符串形式存入,此类的常用方法:

setProperties(String key, String value):设置属性

getProperties(String key):获取属性

getProperties(String key, String defaulValue):获取属性,属性不存在返回默认值

list(Printtream out):输出全部属性

store(OuputStream out,  String comments):将属性内容保存在普通文件中

storeToXML(OutputStreas os, String comment):将内容以XML格式存放

load(InputStream, inStream):从普通文件中读取属性

loadFromXML(inputStream in): 从xml格式的文件中读取属性内容

 

设置属性、获取属性

                //设置文件
		Properties pro = new Properties();
		pro.setProperty("height", "175");
		pro.setProperty("weight", "68");
		pro.setProperty("size", "18");
	
		
		//获取属性
		System.out.println( pro.getProperty("height") );
		//获取属性,如果不存在取默认属性
		System.out.println( pro.getProperty("header", "noting") );
		

  

结果:

175
noting

 

写入属性文件:

Properties p = new Properties();
		p.setProperty("a", "java");
		p.setProperty("b", "c");
		p.setProperty("c", "python");
		p.setProperty("d", "c++");
		p.setProperty("e", "php");
		
		try {
			p.store(new FileOutputStream( new File("E:"+File.separator + "work" + File.separator + "java" + File.separator + "laguage.property" ) ),
					"属性文件");
		} catch (FileNotFoundException e) {
			// TODO 自动生成的 catch 块
			e.printStackTrace();
		} catch (IOException e) {
			// TODO 自动生成的 catch 块
			e.printStackTrace();
		}

  

存文件的的内容:

#\u5C5E\u6027\u6587\u4EF6
#Sat Sep 16 08:22:24 CST 2017
b=c
a=java
e=php
d=c++
c=python

  

获取属性:

// TODO 自动生成的方法存根
		Properties p  = new Properties();
		try {
			p.load(new FileInputStream( new File("E:"+File.separator + "work" + File.separator + "java" + File.separator + "laguage.property") ));
		} catch (FileNotFoundException e) {
			// TODO 自动生成的 catch 块
			e.printStackTrace();
		} catch (IOException e) {
			// TODO 自动生成的 catch 块
			e.printStackTrace();
		}
		
		System.out.println(p.getProperty("a"));

  

得出结果:

java

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值