10.檔案字元緩衝流
阿新 • • 發佈:2022-04-11
這裡使用的 BufferedReade 字元緩衝輸入流來提高讀寫效率,對於字元來說,是通過一行一行讀取的 readLine()
import java.io.BufferedReader;
import java.io.FileReader;
public class Dome07 {
public static void main(String[] args) {
FileReader fr = null;
BufferedReader br = null;
try {
fr = new FileReader("d:/a.txt");//建立檔案字元輸入流物件
br = new BufferedReader(fr);//建立檔案字元緩衝輸入流物件
String temp = "";
while ((temp = br.readLine())!=null){
System.out.println(temp);
}
}catch (Exception e){
e.printStackTrace();
}finally {
try {
if (br!=null){
br.close();
}
if (fr!=null){
fr.close();
}
}catch (Exception e){
e.printStackTrace();
}
}
}
}
2.檔案字元緩衝流-字元緩衝輸出流
import java.io.BufferedWriter;
import java.io.FileWriter;
public class Dome08 {
public static void main(String[] args) {
FileWriter fw = null;
BufferedWriter bw = null;
try {
fw = new FileWriter("d:/c.txt");//建立檔案字元輸出流物件
bw = new BufferedWriter(fw);//建立檔案字元緩衝輸出流物件
bw.write("123");
bw.newLine();//換行
bw.write("456");
bw.flush();
}catch (Exception e){
e.printStackTrace();
}finally {
try {
if (bw!=null){
bw.close();
}
if (fw!=null){
fw.close();
}
}catch (Exception e){
e.printStackTrace();
}
}
}
}
3.基於字元緩衝流的文字檔案拷貝工具類
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
public class Dome09 {
public static void main(String[] args) {
copyText("d:/a.txt","d:/b.txt");
}
public static void copyText(String src,String des){
BufferedReader br = null;
BufferedWriter bw = null;
try {
br = new BufferedReader(new FileReader(src));
bw = new BufferedWriter(new FileWriter(des));
String temp = "";
while ((temp = br.readLine())!=null){
bw.write(temp);
bw.newLine();//換行處理,由於這裡是讀一行,寫一行,所有進行換行一下比較好
}
bw.flush();
}catch (Exception e){
e.printStackTrace();
}finally {
try {
if (br!=null){
br.close();
}
if (bw!=null){
bw.close();
}
}catch (Exception e){
e.printStackTrace();
}
}
}
}