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 (); } }