Java I/O ストリームは、プロデューサー/コンシューマー モデルを通じてデータを読み書きするためのメカニズムを提供し、データ ソースと宛先間の通信を簡素化します。ストリームの種類は、バイト ストリームと文字ストリームに分けられます。入力ストリームはデータの読み取りに使用され、出力ストリームはデータの書き込みに使用されます。重要な概念には、バッファリング、マーキング、読み取り/書き込みメソッド、およびファイル ハンドルが含まれます。実際のケース: ファイルからテキストを読み取り、別のファイルにコピーする場合、FileInputStream が入力ストリームとして使用され、FileOutputStream が出力ストリームとして使用され、while ループでバイトの読み取りと書き込みが行われ、flush() メソッドでバッファーが更新されます。 。
Java I/O ストリームの原則と重要な概念
はじめに
Java I/O ストリーム メカニズムは、データの読み取りと書き込みのための抽象化を提供し、さまざまな種類のデータ ソースと宛先間の通信を簡素化します。これは、プロデューサーがデータを生成し、コンシューマーがそれを受信して処理する、プロデューサー-コンシューマー モデルに基づいています。
ストリームの種類
バイト ストリーム: 画像やファイルなどの生のバイト データの読み取りと書き込み。
文字ストリーム: テキストやコードなど、Char 型で表される文字データの読み取りと書き込み。
入力ストリームと出力ストリーム
入力ストリーム: データ ソースからデータを読み取るために使用されます。
出力ストリーム: データを宛先に書き込むために使用されます。
主要な概念
read()
、write()
、# など、データの読み取りおよび書き込みを行うためのさまざまなメソッドを提供します。 ##流す()###。
ファイルからテキストを読み取り、別のファイルにコピーする次の Java コードを考えてみましょう:
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class CopyFile { public static void main(String[] args) { // 源文件 File sourceFile = new File("source.txt"); // 目标文件 File targetFile = new File("target.txt"); // 创建文件输入流 try (FileInputStream fis = new FileInputStream(sourceFile); // 创建文件输出流 FileOutputStream fos = new FileOutputStream(targetFile)) { // 循环读取源文件中的字节 int b; while ((b = fis.read()) != -1) { // 将读取到的字节写入目标文件 fos.write(b); } // 刷新目标文件缓冲区 fos.flush(); } catch (IOException e) { e.printStackTrace(); } } }
Inこの例:
は、
source.txt## から読み取るための 入力ストリーム として使用されます # 読み取りファイルからのバイト数。
target.txt
ファイルにバイトを書き込むための 出力ストリーム として使用されます。
source.txt
内のバイトを読み取り、target.txt に書き込むループ。
target.txt
のバッファをフラッシュし、すべてのバイトがファイルに書き込まれたことを確認します。
以上がJava I/O ストリームの原則と重要な概念は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。