Java基础 第四节 第十五课

举报
我是小白呀iamarookie 发表于 2021/09/10 01:31:57 2021/09/10
【摘要】 属性集 概述Properties 类构造方法基本的存储方法与流相关的方法 概述 java.util.Properties继承于Hashtable, 来表示一个持久的属性集. 它使用键值...

概述

java.util.Properties继承于Hashtable, 来表示一个持久的属性集. 它使用键值结构存储数据. 每个键及其对应值都是一个字符串. 该类也被许多 Java 类使用, 该类也被许多 Java 类使用, 比如获取系统属性时, System.getProperties方法就是返回一个Properties对象.

Properties 类

构造方法

public Properties(): 创建一个空的属性列表.

基本的存储方法

  • public Object setProperty(String key, String value): 保存一对属性
  • public String getProperty(String key): 使用此属性列表中指定的键搜索属性值
  • public Set<String> stringPropertyNames(): 所有键的名称的集合
import java.util.Properties;
import java.util.Set;

public class Test28 {
    public static void main(String[] args) {
        // 创建属性集对象
        Properties properties = new Properties();
        // 添加键值对元素
        properties.setProperty("filename","a.txt");
        properties.setProperty("length", "209385038");
        properties.setProperty("location", "D:\\a.txt");
        // 打印属性集对象
        System.out.println(properties);
        // 通过键, 获取属性值
        System.out.println(properties.getProperty("filename"));
        System.out.println(properties.getProperty("length"));
        System.out.println(properties.getProperty("location"));
        // 遍历属性集, 获取所有键的集合
        Set<String> strings = properties.stringPropertyNames();
        // 打印键值对
        for(String key : strings) {
            System.out.println(key + "--" + properties.getProperty(key));
        }
    }
}

输出结果:
{filename=a.txt, length=209385038, location=D:\a.txt}
a.txt
209385038
D:\a.txt
filename ‐‐ a.txt
length ‐‐ 209385038
location ‐‐ D:\a.txt

  
 
  • 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
  • 31
  • 32
  • 33
  • 34

与流相关的方法

public void load(InputSream inStram): 从字节输入流中读取键值对.

参数中使用了字节输入流, 通过流对象. 可以关联到某文件上, 这样就能够加载文本中的数据了. 文本数据格式:

filename=a.txt
length=209385038
location=D:\a.txt

  
 
  • 1
  • 2
  • 3

加载代码演示:

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

public class Test29 {
    public static void main(String[] args) throws IOException {
        // 创建属性集对象
        Properties pro = new Properties();
        // 加载文本中信息到属性集
        pro.load(new FileInputStream("read.txt"));
        // 遍历集合并打印
        Set<String> strings = pro.stringPropertyNames();
        for (String key : strings ) {
            System.out.println(key+" ‐‐ "+pro.getProperty(key));
        }
    }
}

输出结果:
filename ‐‐ a.txt
length ‐‐ 209385038
location ‐‐ D:\a.txt

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23

注: 文本中的数据, 必须是键值对形式. 可以使用空格. 等号, 冒号等符号分隔.

文章来源: iamarookie.blog.csdn.net,作者:我是小白呀,版权归原作者所有,如需转载,请联系作者。

原文链接:iamarookie.blog.csdn.net/article/details/110428695

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。