ホームページ  >  記事  >  Java  >  Java言語の入出力ストリーム操作スキル

Java言語の入出力ストリーム操作スキル

WBOY
WBOYオリジナル
2023-06-10 14:42:251388ブラウズ

Java 言語の入出力ストリーム操作スキル

Java 言語は、開発者に多くの便利な入出力ストリーム クラスを提供し、ファイルの読み取りおよび書き込み操作を非常にシンプルかつ効率的にします。この記事では、Java 言語の入出力ストリームの基礎知識と一般的な操作テクニックを紹介します。

Java 入力および出力ストリーム: 概要

Java 入力および出力ストリームは、いくつかの事前定義クラスを使用してデータ ストリームまたはデータ ブロックを読み書きするメカニズムです。これらは、テキスト、バイナリ、画像などのさまざまなデータ型を読み書きできる Java.io パッケージの下のクラスです。 Java 入力ストリームは入力ストリームの読み取りに使用され、Java 出力ストリームは出力ストリームの書き込みに使用されます。さらに、Java 入出力ストリームを使用して、ネットワーク ソケット、ファイル、その他の入出力デバイスの読み取りと書き込みを行うこともできます。

Java 入力および出力ストリームの分類

Java 入力および出力ストリームは、主に 4 つのタイプに分類できます。

  1. バイト ストリーム: バイナリ形式を使用して読み取りおよび出力を行います。データを書き込みます。これは、抽象クラス InputStream および OutputStream のサブクラスです。 BufferedInputStream と BufferedOutputStream は、読み取りと書き込みの効率を向上させることができます。
  2. Character Stream: 文字形式を使用してデータの読み取りと書き込みを行います。これは、抽象クラス Reader および Writer のサブクラスです。 BufferedReader と BufferedWriter は、読み取りと書き込みの効率を向上させることができます。
  3. オブジェクト ストリーム: Java オブジェクトの読み取りと書き込みに使用されます。これは、ObjectInputStream および ObjectOutputStream のサブクラスです。
  4. 圧縮ストリーム: 圧縮および解凍されたデータの読み取りと書き込みに使用されます。これは、GZIPInputStream、GZIPOutputStream、InflaterInputStream、DeflaterOutputStream のサブクラスです。

Java 入力および出力ストリームの操作スキル

次に、一般的に使用される Java 入力および出力ストリームの操作スキルをいくつか紹介します。

  1. BufferedInputStream および BufferedOutputStream の使用クラスは読み書きの効率を向上させることができます。データをメモリにキャッシュし、キャッシュがいっぱいになった場合、または特定の条件が満たされた場合にのみ、データをディスクに書き込むことができます。
  2. 大きなファイルの場合は、RandomAccessFile クラスを使用して、任意の場所でデータをすばやく読み書きします。
  3. テキスト ファイルの場合、FileReader クラスまたは FileWriter クラスを使用して読み取りと書き込みを行うことができます。読み取りおよび書き込み時には、文字エンコーディングを指定する必要があります。次のコードを使用できます:
FileReader fr = new FileReader("file.txt");
BufferedReader br = new BufferedReader(fr);
String line;
while ((line = br.readLine()) != null) {
    System.out.println(line);
}
br.close();
fr.close();
  1. バイナリ ファイルの場合、DataInputStream クラスと DataOutputStream クラスを使用して読み取りと書き込みができます。書き込み時に書き込むデータ型とバイト サイズを指定する必要があることに注意してください。コードを使用できます:
DataOutputStream out = new DataOutputStream(
    new BufferedOutputStream(
        new FileOutputStream("binary.dat")));
out.writeInt(123);
out.writeDouble(3.14159);
out.writeChar('A');
out.close();

DataInputStream in = new DataInputStream(
    new BufferedInputStream(
        new FileInputStream("binary.dat")));
System.out.println(in.readInt());
System.out.println(in.readDouble());
System.out.println(in.readChar());
in.close();
  1. ループ内でバイナリ ファイルを読み取るときは、EOFException を使用できます。ファイルの読み取りが完了したかどうかを判断する例外。例外が読み取られた場合、それは読み取りが完了したことを意味します。
DataInputStream in = new DataInputStream(
    new BufferedInputStream(
        new FileInputStream("binary.dat")));
try {
    while (true) {
        int i = in.readInt();
        double d = in.readDouble();
        char c = in.readChar();
        System.out.println(i + " " + d + " " + c);
    }
} catch (EOFException e) {
    System.out.println("文件读取完毕");
}
in.close();

結論

Java 入出力ストリームは Java プログラミングの非常に重要な部分です。この記事では、Java の入出力ストリームの基礎知識と一般的な操作テクニックを紹介します。 Java の入出力ストリームを徹底的に研究して使用することにより、Java プログラムの読み取りおよび書き込みの効率とパフォーマンスを大幅に向上させることができます。

以上がJava言語の入出力ストリーム操作スキルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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