import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
/*
* 把ArrayList集合中的字符串数据存储到文本文件中
* 每一个字符串元素作为文件中的一行数据
*
* 分析:
*1 创建集合元素
*2 往集合中添加字符串元素
* 3 创建字符缓冲流对象
* 4 遍历集合 得到每一个字符串元素 然后把每一个字符串元素作为数据写到文本文件中
* 5 释放资源
* */
public class ArrayListToFileTest {
public static void main(String[] args) throws IOException {
// 创建一个集合对象
ArrayList<String> array = new ArrayList<String>();
array.add("hello");
array.add("world");
array.add("java");
BufferedWriter bw = new BufferedWriter(new FileWriter("array.txt"));
//遍历集合 得到每一个字符串元素 然后把字符串元素作为数据写到文本文件
for (int i = 0; i < array.size(); i++) {
String s = array.get(i);
bw.write(s);
bw.newLine();
bw.flush();
}
bw.close();
}
}
import java.util.Properties;
import java.util.Set;
/*
* Properties 实现了map接口 也可以使用map中的方法
* Properties 表示了一个持久的属性集 它的每一个键及其所对应的值都是String类型的,所以不需要使用泛型
* 构造方法:
* Properties()
*
* */
public class PropertiesDemo {
public static void main(String[] args) {
//创建属性列表对象
Properties prop = new Properties();
//添加映射关系
prop.put("201758503119","于振涛");
prop.put("201758503120","李文奇");
//遍历属性列表
Set<Object> keys = prop.keySet(); //这里只能给object泛型
for (Object key: keys) {
Object value = prop.get(key);
System.out.println(key+"="+value);
}
}
}
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Properties;
/*
* Properties和IO流结合的功能:
* void list(PrintWriter out)
将此属性列表打印到指定的输出流。
void load(InputStream inStream)
从输入字节流读取属性列表(键和元素对)。
void store(OutputStream out, String comments)
将此属性列表(键和元素对)写入此 Properties表中,以适合于使用 load(InputStream)方法加载到 Properties表中的格式输出流。
*
* list和store:
* List只能接受打印流 store可以接受所有的输入流*/
public class PropertiesDemo2 {
public static void main(String[] args) throws IOException {
//往文件中写入键值对
//创建属性列表对象
Properties prop = new Properties();
//添加映射关系
prop.put("201758503119","yuzhentao");
prop.put("201758503120","wangyongheng");
prop.put("201758503118","liwenqi");
//创建打印流对象
PrintWriter pw = new PrintWriter("d.txt");
prop.list(pw);
//释放资源
pw.close();
//从文件中读取键值对
//创建属性列表对象
Properties prop2 = new Properties();
//创建一个输入流对象
FileReader fr = new FileReader("d.txt");
prop2.load(fr);
//释放资源
fr.close();
System.out.println(prop2);
//创建属性列表对象
Properties prop3 = new Properties();
//添加映射关系
prop3.put("201758503119","yuzhentao");
prop3.put("201758503120","wangyongheng");
prop3.put("201758503118","liwenqi");
//创建打印流对象
PrintWriter pw2 = new PrintWriter("e.txt");
prop3.store(pw2,null); //后面的参数就是一个描述 随便给
//释放资源
pw2.close();
}
}