Java基础-Properties

Properties是hashtable的子类:
也就是说它具备map集合的特点,而且它里面存储的键值对都是字符串,是集合和IO技术相结合的集合容器。
该对象的特点:可以用于键值对形式的配置文件。
那么在加载数据时,需要数据有固定格式:键=值。
常用方法:
Object setProperty(String key,String value):
        调用Hashtable的put方法,设置键值对
String getProperty(String key):
Set<String> stringPropertyNames:
       获取集合中所有的键
void load(InputStream in):
      从输入流中读取属性列表(键和元素对)。
void  load(Reader reader):
        按简单的面向行的格式从输入字符流中读取属性列表(键和元素对)。
  void list(PrintStream out)  
       将属性列表输出到指定的输出流。
voidlist(PrintWriter out)   
        将属性列表输出到指定的输出流。
Store(OutputStream out,String comments):

Store(Writer writer,String comments)

Properties不仅可以操作键值对,而且可以操作硬盘上的键值对信息。而集合只能操作内存中的数据。

代码:

import java.io.*;
import java.util.*;

public class code
{
	public static void main(String[] args) throws IOException{
		//setAndGet();
		 method_1();
		System.out.println("over");
	}

	//演示,如何将流中的数据存储到集合中。
	// 想要将info。txt中键值数据存到集合中进行操作
	/*
		1.用一个流和info.txt文件关联。
		2.读取一行数据,将每行数据用“=”进行切割。
		3.等号左边作为键,右边作为值,存入到Properties集合中即可。
	*/
	public static void method_1() throws IOException{
		BufferedReader bufr = new BufferedReader(new FileReader("info.txt"));

		String line = null;
		Properties prop = new Properties();
		while ((line = bufr.readLine())!=null)
		{
			System.out.println(line);
			String[] arr = line.split("=");
			System.out.println(arr[0]+"...."+arr[1]);
			prop.setProperty(arr[0],arr[1]);
			
		}
		bufr.close();
		System.out.println(prop);
	}

	//设置和获取元素
	public static void setAndGet(){
		Properties prop = new Properties();

		prop.setProperty("zhangsan","30");
		prop.setProperty("lisi","40");

		System.out.println(prop);

		Set<String> names = prop.stringPropertyNames();
		for (String s : names )
		{
			System.out.println(s+":"+prop.getProperty(s));
		}
	}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值