Properties集合

4 篇文章 0 订阅
1 篇文章 0 订阅

java.util.Properties集合 extends Hashtable<K k,V v>
Properties(属性)类表示了一个待久的属性集,Properties可保存在流中或从流中加载
Properties集合是一个唯一和IO流相结合的集合
可使用Properties集合中的方法Store,把集合中的临时数据,持久化写入硬盘中存储
可以使用Properties集合中的方法Load,把硬盘中的文件(键值对),读取到集合中使用
属性列表中每个键或值都是一个字符串
Properties集合是一个双例集合,Key,Value都是String类型

使用Properties集合存储数据,遍历取出Properties集合中的数据
Properties集合有一些操作字符串的特有方法:
Objece.SetProperty(String Key,String Value)相当于调用HashMap的put方法
String getProperty(String Key)相当于HashMap的get(key)方法
Set stringPropertyNames()返回些属性列表中的键集,相当于HashMap的KeySet方法

package io.test;

import java.util.Properties;
import java.util.Set;

public class PropertiesDemo01 {
    public static void main(String[] args) {
        mother();
    }

    private static void mother() {
        Properties pro=new Properties();
        pro.setProperty("张天爱","28");
        pro.setProperty("佟丽娅","30");
        pro.setProperty("古力娜扎","18");
        pro.setProperty("刘备","8");

        Set<String> set = pro.stringPropertyNames();
        if (set.size()!=0){
            for (String s : set) {
                System.out.println(s+": "+pro.getProperty(s));
            }
        }
    }
}

使用Properties集合的方法Store,把集合中的临时数据待久化写入到硬盘中存储
void store(OutputStream out,String comments)
void store(Writer writer ,String comments)
参数:
OutputStream out:字节输出流,不能写中文
Writer writer:字符输出流,可以写中文
String comments:注释,用来说明的文件是做什么用的,不能使用中文,会产生乱码,默认是Unicode编码,一般使用“ 空字符串”
使用步骤:
1,创建Properties集合对象,添加数据
2,创建字节输出流或字符输出流,构造方法中绑定要输出的目的地
3,使用Properties集合中的方法store,把集合中的临时数据持久化写入硬盘中存储
4,释放资源

package io.test;

import java.io.FileWriter;
import java.io.IOException;
import java.util.Properties;

public class PropertiesDemo02 {
    public static void main(String[] args) throws IOException {
        mother();
    }

    private static void mother() throws IOException {
        Properties pro=new Properties();
        pro.setProperty("张天爱","28");
        pro.setProperty("佟丽娅","32");
        pro.setProperty("古力娜扎","18");
        pro.setProperty("刘务","8");

        FileWriter fw=new FileWriter("ee.txt");
        pro.store(fw,"my data");
        fw.close();
    }
}

可以使用Properties集合中的方法load,把硬盘中的文件(键值对),读取到集合中使用
void load(InputStream inStream)
void load(Reader reader)
使用步骤:
1,创建Properties集合对象
2,使用Properties集合对象中的方法Load读取保存键值对的文件
3,遍历Properties集合

package io.test;

import java.io.FileReader;
import java.io.IOException;
import java.util.Properties;
import java.util.Set;

public class PropertiesDemo03 {
    public static void main(String[] args) throws IOException {
        mother();
    }

    private static void mother() throws IOException {
        Properties pro = new Properties();

        FileReader fr = new FileReader("ee.txt");
        pro.load(fr);
        Set<String> set = pro.stringPropertyNames();
        if (set.size() != 0 && set != null) {
            for (String s : set) {
                System.out.println(s + ": " + pro.getProperty(s));
            }
        }

        fr.close();
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值