1.字符缓冲流BufferedReader、BufferedWriter
package test.buffered;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class BufferedCharDemo {
public static void main(String[] args) {
File src = new File("E:/test/a.txt");
File dest = new File("E:/test/b.txt");
BufferedReader reader = null;
BufferedWriter writer = null;
try {
reader = new BufferedReader(new FileReader(src));
writer = new BufferedWriter(new FileWriter(dest));
String line = null;
while (null != (line = reader.readLine())) {
writer.write(line);
writer.newLine();
}
writer.flush();
} catch (FileNotFoundException e) {
e.printStackTrace();
System.out.println("源文件不存在");
} catch (IOException e) {
e.printStackTrace();
System.out.println("文件读取失败");
} finally {
try {
if (null != writer) {
writer.close();
}
} catch (Exception e2) {
}
try {
if (null != reader) {
reader.close();
}
} catch (Exception e2) {
}
}
}
}
2.字节缓冲流BufferedInputStream、BufferedOutputStream
package test.buffered;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class BufferedByteDemo {
public static void main(String[] args) {
try {
copyFile("E:/test/2.pdf", "E:/test/3.pdf");
} catch (IOException e) {
e.printStackTrace();
}
}
public static void copyFile(String srcPath, String destPath) throws IOException {
File src = new File(srcPath);
File dest = new File(destPath);
if (src.exists() && src.isFile()) {
InputStream in = new BufferedInputStream(new FileInputStream(src));
OutputStream out = new BufferedOutputStream(new FileOutputStream(dest));
byte[] buffer = new byte[1024];
int len = 0;
while (-1 != (len = in.read(buffer))) {
out.write(buffer);
}
out.flush();
out.close();
in.close();
} else {
if (!src.exists()) {
System.out.println(src + "文件不存在");
} else if(!src.isFile()) {
System.out.println(src + "不是文件");
}
}
}
}