Java位元組流檔案複製及效率比較
前兩種是不帶緩衝的的位元組流複製,後兩種是帶緩衝的位元組流複製,可以看出帶緩衝的位元組流複製的效率遠遠大於不帶緩衝的位元組流複製,而帶位元組陣列複製的效率也要比單個位元組複製的效率高。
public static void main(String[] args) throws IOException {
long s = System.currentTimeMillis();
copy_4();
long e = System.currentTimeMillis();
System.out.println(e-s);
}
/**
* @author admin
* @throws IOException
* @Data 2018-8-3
* @see 位元組流複製檔案 47776ms
*/
public static void copy_1() throws IOException {
FileOutputStream fos = new FileOutputStream(new File("E:\\demo.java"));
FileInputStream fis = new FileInputStream(new File("D:\\demo.java"));
int n = 0;
while ((n = fis.read()) != -1) {
fos.write(n);
}
fis.close();
fos.close();
}
/**
* @author admin
* @throws IOException
* @see 位元組流位元組陣列複製 83ms
*/
public static void copy_2() throws IOException {
FileOutputStream fos = new FileOutputStream(new File("E:\\demo.java"));
FileInputStream fis = new FileInputStream(new File("D:\\demo.java"));
byte[] bytes = new byte[1024];
int n =0;
while ((n = fis.read(bytes)) != -1) {
fos.write(bytes, 0, n);
}
fis.close();
fos.close();
}
/**
* @author admin
* @throws IOException
* @see 位元組流帶緩衝複製 272ms
*/
public static void copy_3()throws IOException{
BufferedOutputStream bos = new BufferedOutputStream(
new FileOutputStream(new File("E:\\demo.java")));
BufferedInputStream bis = new BufferedInputStream(
new FileInputStream(new File("D:\\demo.java")));
int n = 0;
while((n = bis.read()) != -1){
bos.write(n);
}
bos.close();
bis.close();
}
/**
* @author admin
* @throws IOException
* @see 位元組流帶緩衝位元組陣列複製 19ms
*/
public static void copy_4()throws IOException{
BufferedOutputStream bos = new BufferedOutputStream(
new FileOutputStream(new File("E:\\demo.java")));
BufferedInputStream bis = new BufferedInputStream(
new FileInputStream(new File("D:\\demo.java")));
byte[] bytes = new byte[1024];
int n = 0;
while((n = bis.read(bytes)) != -1){
bos.write(bytes,0,n);
}
bos.close();
bis.close();
}
相關文章
- java 位元組流檔案複製方法總結Java
- java位元組流和字元流的比較哦啊Java字元
- Java I/O流 複製檔案速度對比Java
- [java IO流]之檔案複製Java
- Dalvik 和 Java 位元組碼的比較Java
- Java IO 流之拷貝(複製)檔案Java
- java檔案複製方式在100MB檔案條件下速度的比較Java
- Java的位元組流,字元流和緩衝流對比探究Java字元
- Java的位元組碼和ABAP load的比較Java
- java入門(字元流、位元組流)Java字元
- [java]利用IO流中的位元組流和緩衝流寫一個複製資料夾的小程式Java
- springMVC兩種方式實現多檔案上傳及效率比較SpringMVC
- Java IO3:位元組流Java
- 位元組流
- 檔案輸入輸出處理(二)-位元組流
- 利用java本地複製檔案及資料夾 (轉)Java
- 如何把檔案輸出流替換成位元組輸出流
- Java-IO:複製檔案Java
- Java NIO複製檔案功能Java
- Java: 複製檔案最快方法Java
- php複製目錄及檔案PHP
- 蘋果Mac移動複製檔案效率工具:Yoink蘋果Mac
- 129.(位元組流、字元流)對檔案進行讀寫操作字元
- 面試必問的 Java 位元組流與字元流面試Java字元
- java的IO操作:位元組流與字元流操作Java字元
- Java基礎(八)——IO流1_位元組流、字元流Java字元
- 位元組碼檔案解剖
- 【PG流複製】Postgresql流複製部署過程及效能測試SQL
- Java緩衝輸出位元組流BufferedOutputStreamJava
- Java Class 位元組碼檔案結構詳解Java
- 檔案的複製通過字元流和緩衝流(Buffered)字元
- IO流下:位元組流、流操作規律(java基礎)Java
- Java提高篇(二):IO位元組流、字元流和處理流Java字元
- JS 位元組流 解析JS
- 位元組陣列流陣列
- 檔案內容比較
- java複製檔案時遇到的問題Java
- java檔案流Java