/**
* 集合中的数据存储在内存中,程序一结束,这些数据就没有了。
* 【需求】将这些数据保存,方便下次使用。(这就是“持久化”)
*
* 【思路】
* 既然要将这些数据保存,那么肯定是将其从内存中转移到硬盘上来,既然需要操作硬盘,那么就用到流技术。
*
* 【Properties类中的方法】
* (1)public void store(OutputStream out,String comments) throws IOException:
* (2)public void store(Writer writer,String comments) throws IOException:
* 这两个方法实现的功能一样,都是将Properties集合中的信息持久化存储到文件中,区别只是(1)用于操作字节流,(2)用于操作字符流
*
* 参数:①out-输出流,②comments-属性列表的描述(也就是添加注释,描述输出的信息是啥,是姓名?年龄?还是……)
*/
package demo;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;
public class PropertiesStoreDemo {
public static void main(String[] args) throws IOException {
Properties prop = new Properties();
prop.setProperty("zhangsan", "01");
prop.setProperty("lisi", "02");
prop.setProperty("wangwu", "03");
prop.setProperty("zhaoliu", "04");
//现在有四组信息,即四组键值对,希望将这些【字符串键值】信息存储到文件中,那么需要关联流技术,这里用字符流和字节流均可
FileOutputStream fos = new FileOutputStream("info.txt");//这里也可以用字符流FileWriter
//将集合数据存储到文件中,使用store方法
prop.store(fos, "name+number");
//【注意】参数comments处不要写中文信息,因为输出的会是乱码,是经过不止一个码表编码的表,尽量写英文信息
//记得关闭流
fos.close();
}
}
/**
* 【程序运行结果】
* 在当前目录下新建info.txt文件,其内容如下:
* #name+number
* #Tue Apr 14 10:50:14 CST 2015
* zhangsan=01
* lisi=02
* zhaoliu=04
* wangwu=03
*
* 【注意】带#为注释内容,其余为Properties集合中存储的字符串键值对信息。
*/
23-IO流-44-IO流(Properties集合的-store方法)
最新推荐文章于 2023-03-03 13:56:29 发布