BufferedWriteReaderDemo.java package BufferDemo;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.util.MissingFormatArgumentExcep
package BufferDemo;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.MissingFormatArgumentException;
public class BufferedWriteReaderDemo {
//字符的包装缓冲流
public static void main(String[] args) throws Exception {
BufferedWriter out= new BufferedWriter(new FileWriter("file/ch.txt"));
out.write("君不见黄河之水天上来");
out.newLine();//换行写入
out.write("奔流到海不复回");
out.close();
BufferedReader in = new BufferedReader(new FileReader("file/ch.txt"));
/*char[] buffer=new char[1024];
int len=-1;
while((len=in.read(buffer))!=-1){
System.out.println(new String (buffer,0,len));
}
System.out.println(in.readLine());
*/
String line=null;
while((line=in.readLine())!=null){
System.out.println(line);
}
in.close();
}
}
NodeStreamVsBufferedStrewam.java
package BufferDemo;
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.InputStream;
import java.io.OutputStream;
public class NodeStreamVsBufferedStrewam {
public static void main(String[] args) throws Exception {
File srcf=new File("file/任小龙.avi");
File destf=new File("newfile/龙哥.avi");
/*test1(srcf,destf);*/
/*test2(srcf, destf);*/
/* test3(srcf,destf);*/
test4(srcf,destf);
}
//一般都使用包装流的BufferedStream方法
private static void test4(File srcf, File destf) throws Exception {
long begin=System.currentTimeMillis();
InputStream in=new BufferedInputStream(new FileInputStream(srcf));
OutputStream out=new BufferedOutputStream(new FileOutputStream(destf));
byte[] buffer=new byte[1024];
int len=-1;
while((len=in.read(buffer))!=-1){
out.write(buffer,0, len);
}
in.close();
out.close();
System.out.println(System.currentTimeMillis()-begin);
}
//54ms
private static void test3(File srcf, File destf) throws Exception {
long begin=System.currentTimeMillis();
InputStream in=new BufferedInputStream(new FileInputStream(srcf));
OutputStream out=new BufferedOutputStream(new FileOutputStream(destf));
byte[] buffer=new byte[1024];
int len=-1;
while((len=in.read(buffer))!=-1){
out.write(buffer,0, len);
}
in.close();
out.close();
System.out.println(System.currentTimeMillis()-begin);
}
//1001ms
private static void test2(File srcf, File destf) throws Exception {
long begin=System.currentTimeMillis();
InputStream in=new BufferedInputStream(new FileInputStream(srcf));
OutputStream out=new BufferedOutputStream(new FileOutputStream(destf));
int len=-1;
while((len=in.read())!=-1){
out.write( len);
}
in.close();
out.close();
System.out.println(System.currentTimeMillis()-begin);
}
//261769ms
private static void test1(File srcf, File destf) throws Exception {
long begin=System.currentTimeMillis();
FileInputStream in=new FileInputStream(srcf);
FileOutputStream out=new FileOutputStream(destf);
int len=-1;
while((len=in.read())!=-1){
out.write( len);
}
in.close();
out.close();
System.out.println(System.currentTimeMillis()-begin);
}
}
BufferedoutputStreamDemo.java
package BufferDemo;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
public class BufferedoutputStreamDemo {
public static void main(String[] args) throws Exception {
File f = new File("file/ch.txt");
FileOutputStream out = new FileOutputStream(f);
// 字节缓冲输出流,里面加的是文件字节流
BufferedOutputStream bos = new BufferedOutputStream(out);
//前三步可以合成一步
BufferedOutputStream bos1=new BufferedOutputStream(new FileOutputStream("file/ch.txt"));
bos.write("ajdaosijdoia".getBytes());
bos.close();
File f1 = new File("file/ch.txt");
FileInputStream in = new FileInputStream(f1);
BufferedInputStream bin = new BufferedInputStream(in);
byte[] buffer = new byte[10];
int len = -1;
while ((len = bin.read(buffer)) != -1) {
System.out.println(new String(buffer, 0, len));
}
bin.close();
}
}
