ホームページ  >  記事  >  Java  >  Java I/O ストリームの原則と重要な概念は何ですか?

Java I/O ストリームの原則と重要な概念は何ですか?

WBOY
WBOYオリジナル
2024-04-15 11:12:021061ブラウズ

Java I/O ストリームは、プロデューサー/コンシューマー モデルを通じてデータを読み書きするためのメカニズムを提供し、データ ソースと宛先間の通信を簡素化します。ストリームの種類は、バイト ストリームと文字ストリームに分けられます。入力ストリームはデータの読み取りに使用され、出力ストリームはデータの書き込みに使用されます。重要な概念には、バッファリング、マーキング、読み取り/書き込みメソッド、およびファイル ハンドルが含まれます。実際のケース: ファイルからテキストを読み取り、別のファイルにコピーする場合、FileInputStream が入力ストリームとして使用され、FileOutputStream が出力ストリームとして使用され、while ループでバイトの読み取りと書き込みが行われ、flush() メソッドでバッファーが更新されます。 。

Java I/O流的原理和关键概念是什么?

Java I/O ストリームの原則と重要な概念

はじめに

Java I/O ストリーム メカニズムは、データの読み取りと書き込みのための抽象化を提供し、さまざまな種類のデータ ソースと宛先間の通信を簡素化します。これは、プロデューサーがデータを生成し、コンシューマーがそれを受信して​​処理する、プロデューサー-コンシューマー モデルに基づいています。

ストリームの種類

バイト ストリーム: 画像やファイルなどの生のバイト データの読み取りと書き込み。
文字ストリーム: テキストやコードなど、Char 型で表される文字データの読み取りと書き込み。

入力ストリームと出力ストリーム

入力ストリーム: データ ソースからデータを読み取るために使用されます。
出力ストリーム: データを宛先に書き込むために使用されます。

主要な概念

  • バッファリング: パフォーマンスを向上させるために、ストリームはバッファを使用してデータを一時的に保存します。
  • マーカー: マーカーを使用すると、ストリームが現在の位置を記憶できるようになり、後でデータを再読み取りできるようになります。
  • 読み取りおよび書き込みメソッド: ストリームは、read()write()、# など、データの読み取りおよび書き込みを行うためのさまざまなメソッドを提供します。 ##流す()###。
  • ファイル ハンドル:
  • ファイル I/O の場合、ファイルが開かれたときにファイル ハンドルが作成され、ファイルを識別するために使用されます。
実践的な例:

ファイルからテキストを読み取り、別のファイルにコピーする次の 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この例:

  • FileInputStream は、source.txt## から読み取るための 入力ストリーム として使用されます # 読み取りファイルからのバイト数。
  • FileOutputStream
  • は、target.txt ファイルにバイトを書き込むための 出力ストリーム として使用されます。
  • while
  • source.txt 内のバイトを読み取り、target.txt に書き込むループ。
  • flush()
  • メソッドは target.txt のバッファをフラッシュし、すべてのバイトがファイルに書き込まれたことを確認します。

以上がJava I/O ストリームの原則と重要な概念は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。