缓冲流的效率测试_复制文件
生活随笔
收集整理的這篇文章主要介紹了
缓冲流的效率测试_复制文件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
package com.learn.demo02.CopyFile;import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;/*文件復制練習:一讀一寫明確:數據源: c:\\1.jpg數據的目的地: d:\\1.jpg文件復制的步驟:1.創建一個字節輸入流對象,構造方法中綁定要讀取的數據源2.創建一個字節輸出流對象,構造方法中綁定要寫入的目的地3.使用字節輸入流對象中的方法read讀取文件4.使用字節輸出流中的方法write,把讀取到的字節寫入到目的地的文件中5.釋放資源文件的大小:780,831 字節一次讀寫一個字節:6043毫秒使用數組緩沖讀取多個字節,寫入多個字節:10毫秒*/
public class Demo01CopyFile {public static void main(String[] args) throws IOException {long s = System.currentTimeMillis();//1.創建一個字節輸入流對象,構造方法中綁定要讀取的數據源FileInputStream fis = new FileInputStream("c:\\1.jpg");//2.創建一個字節輸出流對象,構造方法中綁定要寫入的目的地FileOutputStream fos = new FileOutputStream("d:\\1.jpg");//一次讀取一個字節寫入一個字節的方式//3.使用字節輸入流對象中的方法read讀取文件/*int len = 0;while((len = fis.read())!=-1){//4.使用字節輸出流中的方法write,把讀取到的字節寫入到目的地的文件中fos.write(len);}*///使用數組緩沖讀取多個字節,寫入多個字節byte[] bytes = new byte[1024];//3.使用字節輸入流對象中的方法read讀取文件int len = 0;//每次讀取的有效字節個數while((len = fis.read(bytes))!=-1){//4.使用字節輸出流中的方法write,把讀取到的字節寫入到目的地的文件中fos.write(bytes,0,len);}//5.釋放資源(先關寫的,后關閉讀的;如果寫完了,肯定讀取完畢了)fos.close();fis.close();long e = System.currentTimeMillis();System.out.println("復制文件共耗時:"+(e-s)+"毫秒");}}
package com.learn.demo02.CopyFile;import java.io.*;/*文件復制練習:一讀一寫明確:數據源: c:\\1.jpg數據的目的地: d:\\1.jpg文件復制的步驟:1.創建字節緩沖輸入流對象,構造方法中傳遞字節輸入流2.創建字節緩沖輸出流對象,構造方法中傳遞字節輸出流3.使用字節緩沖輸入流對象中的方法read,讀取文件4.使用字節緩沖輸出流中的方法write,把讀取的數據寫入到內部緩沖區中5.釋放資源(會先把緩沖區中的數據,刷新到文件中)文件的大小:780,831 字節一次讀寫一個字節:32毫秒使用數組緩沖讀取多個字節,寫入多個字節:5毫秒*/
public class Demo02CopyFile {public static void main(String[] args) throws IOException {long s = System.currentTimeMillis();//1.創建字節緩沖輸入流對象,構造方法中傳遞字節輸入流BufferedInputStream bis = new BufferedInputStream(new FileInputStream("c:\\1.jpg"));//2.創建字節緩沖輸出流對象,構造方法中傳遞字節輸出流BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("d:\\1.jpg"));//3.使用字節緩沖輸入流對象中的方法read,讀取文件//一次讀取一個字節寫入一個字節的方式/*int len = 0;while((len = bis.read())!=-1){bos.write(len);}*///使用數組緩沖讀取多個字節,寫入多個字節byte[] bytes = new byte[1024];int len = 0;while((len = bis.read(bytes))!=-1){bos.write(bytes,0,len);}bos.close();bis.close();long e = System.currentTimeMillis();System.out.println("復制文件共耗時:"+(e-s)+"毫秒");}
}
?
總結
以上是生活随笔為你收集整理的缓冲流的效率测试_复制文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: BufferedInputStream_
- 下一篇: BufferedWriter_字符缓冲输