国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

緩沖流04_緩沖流的效率測試_復(fù)制文件

caiyongji / 2059人閱讀

摘要:文件復(fù)制練習(xí)一讀一寫明確數(shù)據(jù)源數(shù)據(jù)的目的地文件復(fù)制的步驟創(chuàng)建字節(jié)緩沖輸入流對象構(gòu)造方法中傳遞字節(jié)輸入流創(chuàng)建字節(jié)緩沖輸出流對象構(gòu)造方法中傳遞字節(jié)輸出流使用字節(jié)緩沖輸入流對象中的方法讀取文件使用字節(jié)緩沖輸出流中的方法把讀取的數(shù)據(jù)寫入到內(nèi)部緩沖區(qū)

package com.itheima.demo02.CopyFile;

import java.io.*;

/*

文件復(fù)制練習(xí):一讀一寫

明確:
    數(shù)據(jù)源: c:1.jpg
    數(shù)據(jù)的目的地: d:1.jpg
文件復(fù)制的步驟:
    1.創(chuàng)建字節(jié)緩沖輸入流對象,構(gòu)造方法中傳遞字節(jié)輸入流
    2.創(chuàng)建字節(jié)緩沖輸出流對象,構(gòu)造方法中傳遞字節(jié)輸出流
    3.使用字節(jié)緩沖輸入流對象中的方法read,讀取文件
    4.使用字節(jié)緩沖輸出流中的方法write,把讀取的數(shù)據(jù)寫入到內(nèi)部緩沖區(qū)中
    5.釋放資源(會先把緩沖區(qū)中的數(shù)據(jù),刷新到文件中)

文件的大小:780,831 字節(jié)
一次讀寫一個(gè)字節(jié):32毫秒
使用數(shù)組緩沖讀取多個(gè)字節(jié),寫入多個(gè)字節(jié):5毫秒

*/
public class Demo02CopyFile {

public static void main(String[] args) throws IOException {
    long s = System.currentTimeMillis();
    //1.創(chuàng)建字節(jié)緩沖輸入流對象,構(gòu)造方法中傳遞字節(jié)輸入流
    BufferedInputStream bis = new BufferedInputStream(new FileInputStream("c:1.jpg"));
    //2.創(chuàng)建字節(jié)緩沖輸出流對象,構(gòu)造方法中傳遞字節(jié)輸出流
    BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("d:1.jpg"));
    //3.使用字節(jié)緩沖輸入流對象中的方法read,讀取文件
    //一次讀取一個(gè)字節(jié)寫入一個(gè)字節(jié)的方式
    /*int len = 0;
    while((len = bis.read())!=-1){
        bos.write(len);
    }*/

    //使用數(shù)組緩沖讀取多個(gè)字節(jié),寫入多個(gè)字節(jié)
    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("復(fù)制文件共耗時(shí):"+(e-s)+"毫秒");
}

}
不實(shí)用緩沖流的方式
package com.itheima.demo02.CopyFile;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

/*

文件復(fù)制練習(xí):一讀一寫

明確:
    數(shù)據(jù)源: c:1.jpg
    數(shù)據(jù)的目的地: d:1.jpg

文件復(fù)制的步驟:
    1.創(chuàng)建一個(gè)字節(jié)輸入流對象,構(gòu)造方法中綁定要讀取的數(shù)據(jù)源
    2.創(chuàng)建一個(gè)字節(jié)輸出流對象,構(gòu)造方法中綁定要寫入的目的地
    3.使用字節(jié)輸入流對象中的方法read讀取文件
    4.使用字節(jié)輸出流中的方法write,把讀取到的字節(jié)寫入到目的地的文件中
    5.釋放資源
文件的大小:780,831 字節(jié)
一次讀寫一個(gè)字節(jié):6043毫秒
使用數(shù)組緩沖讀取多個(gè)字節(jié),寫入多個(gè)字節(jié):10毫秒

*/
public class Demo01CopyFile {

public static void main(String[] args) throws IOException {
    long s = System.currentTimeMillis();
    //1.創(chuàng)建一個(gè)字節(jié)輸入流對象,構(gòu)造方法中綁定要讀取的數(shù)據(jù)源
    FileInputStream fis = new FileInputStream("c:1.jpg");
    //2.創(chuàng)建一個(gè)字節(jié)輸出流對象,構(gòu)造方法中綁定要寫入的目的地
    FileOutputStream fos = new FileOutputStream("d:1.jpg");
    //一次讀取一個(gè)字節(jié)寫入一個(gè)字節(jié)的方式
    //3.使用字節(jié)輸入流對象中的方法read讀取文件
    /*int len = 0;
    while((len = fis.read())!=-1){
        //4.使用字節(jié)輸出流中的方法write,把讀取到的字節(jié)寫入到目的地的文件中
        fos.write(len);
    }*/

    //使用數(shù)組緩沖讀取多個(gè)字節(jié),寫入多個(gè)字節(jié)
    byte[] bytes = new byte[1024];
    //3.使用字節(jié)輸入流對象中的方法read讀取文件
    int len = 0;//每次讀取的有效字節(jié)個(gè)數(shù)
    while((len = fis.read(bytes))!=-1){
        //4.使用字節(jié)輸出流中的方法write,把讀取到的字節(jié)寫入到目的地的文件中
        fos.write(bytes,0,len);
    }

    //5.釋放資源(先關(guān)寫的,后關(guān)閉讀的;如果寫完了,肯定讀取完畢了)
    fos.close();
    fis.close();
    long e = System.currentTimeMillis();
    System.out.println("復(fù)制文件共耗時(shí):"+(e-s)+"毫秒");
}

}

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/76244.html

相關(guān)文章

  • 1、轉(zhuǎn)換 2、緩沖

    摘要:字符轉(zhuǎn)換流原理字節(jié)流編碼表。和作為子類,僅作為操作字符文件的便捷類存在。源目的先根據(jù)需求明確要讀,還是要寫。屏幕網(wǎng)絡(luò)完全可以明確具體要使用哪個(gè)流對象。明確四是否需要額外功能呢額外功能轉(zhuǎn)換嗎轉(zhuǎn)換流。高效嗎緩沖區(qū)對象。 01轉(zhuǎn)換流概述 * A: 轉(zhuǎn)換流概述 * a: 轉(zhuǎn)換流概述 * OutputStreamWriter 是字符流通向字節(jié)流的橋梁:可使用指定的字符編碼...

    sf190404 評論0 收藏0
  • 1、字節(jié) 2、字符

    摘要:用兩個(gè)字節(jié)表示。兩個(gè)字節(jié)第一個(gè)字節(jié)是負(fù)數(shù)第二個(gè)字節(jié)可能是正數(shù)目前最常用的中文碼表,萬的中文和符號。用兩個(gè)字節(jié)表示,其中的一部分文字,第一個(gè)字節(jié)開頭是,第二字節(jié)開頭是最新的中文碼表,目前還沒有正式使用。 01輸入和輸出 * A:輸入和輸出 * a: 參照物 * 到底是輸入還是輸出,都是以Java程序?yàn)閰⒄? * b: Output * 把內(nèi)存...

    asoren 評論0 收藏0
  • Java IO詳解

    摘要:后綴名是父類名。將字符讀取流對象作為參數(shù)傳遞給緩沖對象的構(gòu)造函數(shù)。讀寫失敗讀取關(guān)閉失敗寫入關(guān)閉失敗字節(jié)流操作從文件系統(tǒng)中的某個(gè)文件中獲得輸入字節(jié)。和字節(jié)流需求,想要操作圖片數(shù)據(jù)。 概述 IO流用來處理設(shè)備之間的數(shù)據(jù)傳輸,Java對數(shù)據(jù)的操作是通過流的方式,Java用于操作流的對象都在IO包中。 流按操作數(shù)據(jù)分為兩種:字節(jié)流與字符流流按流向分為:輸入流、輸出流 IO流常用基類 字符流的抽...

    DC_er 評論0 收藏0
  • 巧妙復(fù)制一個(gè)

    摘要:場景實(shí)際業(yè)務(wù)中可能出現(xiàn)重復(fù)消費(fèi)一個(gè)可讀流的情況,比如在前置過濾器解析請求體,拿到進(jìn)行相關(guān)權(quán)限及身份認(rèn)證認(rèn)證通過后框架或者后置過濾器再次解析請求體傳遞給業(yè)務(wù)上下文。 場景 實(shí)際業(yè)務(wù)中可能出現(xiàn)重復(fù)消費(fèi)一個(gè)可讀流的情況,比如在前置過濾器解析請求體,拿到body進(jìn)行相關(guān)權(quán)限及身份認(rèn)證;認(rèn)證通過后框架或者后置過濾器再次解析請求體傳遞給業(yè)務(wù)上下文。因此,重復(fù)消費(fèi)同一個(gè)流的需求并不奇葩,這類似于js...

    wenzi 評論0 收藏0
  • 轉(zhuǎn)換04_OutputStreamWriter介紹&代碼實(shí)

    摘要:是字符流通向字節(jié)流的橋梁可使用指定的將要寫入流中的字符編碼成字節(jié)。編碼把能看懂的變成看不懂繼續(xù)自父類的共性成員方法寫入單個(gè)字符。刷新該流的緩沖。關(guān)閉此流,但要先刷新它。構(gòu)造方法創(chuàng)建使用默認(rèn)字符編碼的。 package com.itheima.demo03.ReverseStream; import java.io.FileOutputStream;import java.io.IOEx...

    notebin 評論0 收藏0

發(fā)表評論

0條評論

caiyongji

|高級講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<