IOのJavaベースのキャッシュの読み取りおよび書き込みバイトバイト

IOをパッケージ化。

輸入com.sun.istack.internal.NotNull; 
輸入com.sun.istack.internal.Nullable; 
輸入java.io. *; 
輸入java.nio.charset.StandardCharsets。

パブリッククラスiodemo { 


    公共の静的な無効メイン(文字列[] argsが)にIOException {スロー
        列src = "D:\\ワークスペース\\ javahmac \\ leetcode \\ IO \\ test1.txtという"と、
        ストリングDEST = "D:\\ワークスペース\\ javahmac \\ leetcode \\ IO \\ test2.txtという名前"; 
// readThenWrite(SRC、DEST)。
          bufferWrite(SRC、DEST)。

    } 
    静的な文字列readMethod(@NotNull文字列のパス)IOExceptionがスロー{ 
         / **リターン文字列* / 
         IN =新しいFileInputStreamを(パス)入力ストリーム。 
         バイト[]バイト=新しいバイト[1024]; // TODOワンタイムの長さバイト読み! 
         int型NUM = 0; 
         // TODOは-1 OFF、ファイルは他のNUM現在のポインタ位置に代わって返され、ファイルの末尾にファイルポインタを示し、バイト配列ストレージ示しオフセット
         *()//が読み取ら@戻り、バイトの総数がバッファに読み込ま、または
        データがないので端部は、ストリームに達した場合、@ -1示します。
         StringBuilderのビルダー=新規のStringBuilder(); //文字列str = ""; とすることができる
         一方で(!(NUM = in.read(バイト0、bytes.length))= - 1){ 
              //新しい新しい文字列STR + =(バイト、0、NUM);ことができる
              (新しい文字列(バイト、0 builder.append 、NUMを)); // バイトの数を文字列に変換され、改行を、等を保有

        } 
         のSystem.out.println(ビルダー)。改行と// TODO 
         リターンbuilder.toString(); 
    } 

    @Deprecated
    静的ボイドwriteMethodは、(文字列のパスは、NULL可能文字列モード@、文字テキストは)のIOException {スロー 
        =新規のFileInputStream(SRC)にInputStreamを。// TODO APPEND可以追加、如果destの不存在自动创建。 
        / **書き込み/ *ファイルへの[]バイト
        バイト[]コンテンツ= text.getBytes()。
        (mode.equals( "W")){場合
            のOutputStreamアウト=新しいたFileOutputStream(パス、偽)。// W 
            out.write(コンテンツ)。
        } 
        (mode.equals( "")){場合
            のOutputStreamアウト=新しいたFileOutputStream(パス、真の); //真追加写A + 
            out.write(コンテンツ); 
        } 

    } 
    / **ワンタイムRワンタイムW * / 
    静的ボイドreadThenWrite(列src、destの文字列)にIOException {スロー
        のOutputStreamアウト=新しいたFileOutputStream(DEST)を、

        // TODO一次性取多少字节
        バイト[]バイト=新しいバイト[1024]; 
        // TODO文件指针-1表示最后一行
        のint NUM。
        しばらく((NUM = in.read(バイト、0、bytes.length))!= -1){ 
            // TODOバイトは毎回の変換文字列読まれる
            文字列STR =新しい新しい文字列(バイト、0、NUM)を; //この変換を達成することができるバイト列、より実用的な
            のSystem.out.println(STR); 
            ライトのTODO当たりのバイト数// 
            out.write(バイト0、NUM); 
        } 
        // CLOSE STREAMの
        in.close(); 
        out.close(); 
    } 

    静的bufferReadストリング(文字列SRC)にFileNotFoundExceptionは、IOException {スロー 
        [バイト]バイト=新しい新しいバイト[2048]; 
        //(nは数値データを表しているが、)コンテンツ受信を読み取ります
 
        //ファイル(バイトストリームのキャッシュを)読んで
        IN =新しい新たにBufferedInputStreamにBufferedInputStream(新しい新規のFileInputStream(SRC)); 
        //数が使い捨てTODO取らバイト
        INT = N - 1; 
        文字列STR = ""; 
        一方、((n-in.read =(バイト0、bytes.length !))= -1){ 
            //文字列に
            STR + =新しい新しい文字列(バイト)、N- 0; //文字セットUTF-8デフォルト。
            //System.out.println(str); 
        } 
        in.close( ); 
        戻りstr.toString;()
    } 

    静的な無効bufferWrite(SRC文字列、DEST文字列)のIOException {スロー
        //ファイル(バイトストリームキャッシュを読んで)
        )BufferedInputStreamを新しい新=(新新のFileInputStream(SRCでBufferedInputStreamをする); 
        //書き込み対応するファイルに 
        なBufferedOutputStream新しい新規なBufferedOutputStreamザOUTを=(新しい新規たFileOutputStream(DEST)); 
        使い捨て取らバイトの//数
        バイト[]バイト=新しいバイト[2048]; 
        //読み出さコンテンツ受信(nはデータを表し、単にデジタル形式である)
        INT = N - 1; 
        // TODOは、データ・サイクルを抽出し、長さbytes.length 
        ながら(!(n-in.read =(バイト0、bytes.length))= -1){ 
            //文字列に
            文字列str =新しい文字列(バイト、 0、N、StandardCharsets.UTF_8)。 
            System.out.println(STR); 
            //書き込み文書は
            (N-、0バイト)out.write; 
        } 
        //キャッシュクリア
        out.flushを(); 
        //閉じるストリームは
        (in.close); 
        out.close (); 

    } 


}

  

おすすめ

転載: www.cnblogs.com/SunshineKimi/p/12594008.html