Java学习之IO(Proerties)

Posted 一杯水M

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java学习之IO(Proerties)相关的知识,希望对你有一定的参考价值。

Map
  |--Hashtable
    |--Propreties

特点:
  1、集合中的键和值都是字符串类型
  2、集合数据可以保存到流中,或从流中获取

用于操作以键值对形式存在的配置文件

特有方法

  String getProperty?(String key)
  Object setProperty?(String key, String value)
  Set<String> stringPropertyNames()
  void list?(PrintStream out);//将此属性列表打印到指定的输出流。
 
  void store?(OutputStream out, String comments);//持久化,存储到流中
  void store?(Writer writer, String comments);//
 
  void load?(InputStream inStream);//流中获取数据
  void load?(Reader reader);

代码实例:

 1 public static void main(String[] args) throws IOException {
 2     //propertiesDemo();
 3     propertiesStream();
 4     }
 5 
 6     private static void propertiesStream() throws IOException {
 7     File file=new File("info.txt");
 8     //判断文件是否存在
 9     if(!file.exists()) {
10         file.createNewFile();
11     }
12     // 创建集合
13     Properties p = new Properties();
14     //验证Properties集合
15     p.list(System.out);
16     Reader reader=new FileReader(file);
17     p.load(reader);
18     //验证Properties集合
19     p.list(System.out);
20     //添加元素
21     p.setProperty("zhao", "6");
22     
23     //保存
24     p.store(new FileOutputStream(file), "info");
25     }
26 
27     public static void propertiesDemo() throws FileNotFoundException, IOException {
28     // 创建集合
29     Properties p = new Properties();
30     // 存储元素
31     p.setProperty("zhang", "3");
32     p.setProperty("li", "4");
33     p.setProperty("wang", "5");
34     p.setProperty("zhou", "6");
35     // 修改元素
36     p.setProperty("zhou", "7");
37     // 取出元素
38     Set<String> names = p.stringPropertyNames();
39 
40     for (String name : names) {
41         String value = p.getProperty(name);
42         System.out.println(name + ":" + value);
43     }
44 
45     p.store(new FileOutputStream("info.txt"), "info");
46     }

 

以上是关于Java学习之IO(Proerties)的主要内容,如果未能解决你的问题,请参考以下文章

Java学习之IO字节流

java学习之IO对象流

Java学习之IO一

java学习之IO字符流

Java学习之IO二

java学习之IO文件分割