流向
輸入流 讀取數據 FileReader Reader
輸出流 寫出數據 FileWriter Writer
數據類型
*字節流
字節輸入流 讀取數據 InputStream
字節輸出流 寫出數據 OutputStream
*字符流
字符輸入流 讀取數據 Reader
字符輸出流 寫出數據 Writer
/從文件中讀數據到集合
public static void readData(String fileName,ArrayList<Student> array) throws IOException {
//創建輸入緩衝流對象
BufferedReader br = new BufferedReader(new FileReader(fileName));
String line;
while((line=br.readLine())!=null) {
String[] datas = line.split(",");
Student s = new Student();
s.setId(datas[0]);
s.setName(datas[1]);
s.setAge(datas[2]);
s.setAddress(datas[3]);
array.add(s);
}
br.close();
}
//把集合中的數據寫入文件
public static void writeData(String fileName,ArrayList<Student> array) throws IOException {
//創建輸出緩衝流對象
BufferedWriter bw = new BufferedWriter(new FileWriter(fileName));
for(int x=0; x<array.size(); x++) {
Student s = array.get(x);
StringBuilder sb = new StringBuilder();
sb.append(s.getId()).append(",").append(s.getName()).append(",").append(s.getAge()).append(",").append(s.getAddress());
bw.write(sb.toString());
bw.newLine();
bw.flush();
}
bw.close();
}