1、集合------------>File
将集合中的元素添加到File文件中:
思路:1)遍历集合元素-------->目标源文件---------->ArrayList
2)BufferedWriter----------->目的地文件---------->File
具体步骤:
1)创建集合数组
2)向集合中添加集合元素
3)创建字符缓冲输入流(封装目的地文件)
4))遍历集合元素
5)将集合元素输入到流中
6)刷新流
7)释放资源,关闭流
代码举例:
package File_ArrayList_File;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
/*
* 需求:向当前目录下fa.txt文件下用集合添加内容
* */
public class ArrayList_to_File {
public static void main(String[] args) throws IOException {
// 第一步:创建ArrayList集合
ArrayList<String> list = new ArrayList<String>();
// 第二步:向集合中添加元素
list.add("nice");
list.add("to");
list.add("meet");
list.add("you");
// 第三步:创建字符缓冲输入流(封装目的地文件)
BufferedWriter bw = new BufferedWriter(new FileWriter("fa.txt"));
// 第四步:遍历该集合
for (String s : list) {
// 第五步:将集合元素添加(写)到流中:write
bw.write(s);
// 换行(根据需要决定是否添加)
bw.newLine();
// 第六步:刷新流
bw.flush();
}
// 第七步:释放资源,关闭流
bw.close();
}
}
2、File-------------------->集合
将File文件中的内容添加到集合中:
思路:
BufferedReader-------->目标源文件-------->File
集合----------->目的地文件
具体步骤:
1)创建字符缓冲输出流(封装源文件)
2)创建集合对象
3)读取流内容
4)将数据添加到集合中
5)遍历集合
6)关闭流,释放资源
代码举例:
package File_ArrayList_File;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
/*
* 需求:将当前目录下fa.txt文件中的内容输出到集合ArrayList中
* */
public class File_to_ArrayList {
public static void main(String[] args) throws IOException {
// 第一步:创建字符缓冲输出流对象(封装源文件)
BufferedReader bos = new BufferedReader(new FileReader("fa.txt"));
// 第二步:创建集合对象
ArrayList<String> list = new ArrayList<String>();
// 第三步:读取fa.txt文件中的内容(一次读取一行)
String line = null;
// 保证有输出
while ((line = bos.readLine()) != null) {
// 第四步:将数据添加到集合中
list.add(line);
}
// 第五步:遍历list集合并输出
for (String s : list) {
System.out.println(s + " "); //输出:hello world
}
// 第六步:关闭流释放资源
bos.close();
}
}