文字ストリームは、文字データの特性に対して最適化されるため、いくつかの有用な文字指向の機能を提供し、文字ストリームのソースまたはターゲットは通常テキストファイルです。リーダーとライターは、java.ioパッケージのすべてのキャラクターストリームの親クラスです。どちらも抽象クラスであるため、サブクラスを使用してエンティティオブジェクトを作成し、オブジェクトを使用して関連する読み取り操作を処理する必要があります。リーダーとライターのサブクラスは、2つのカテゴリに分けることができます。1つはデータソースからデータを読み取るか、データを宛先に書き込む(ノードフローと呼ばれる)、もう1つはデータ上でいくらかの処理を実行するために使用される(呼び出される)ノードフロー)。
文字指向の入力ストリームクラスは読者のサブクラスであり、そのクラス階層を図に示します。
次の表には、読者のメインサブクラスと説明を示します。
読者が提供する方法は、これらのメソッドを使用して、ストリーム内のビットデータを取得できます。
FileReaderクラスを使用してファイルを読み取ります
FileReaderクラスはinputStreamReaderクラスのサブクラスであり、FileReaderクラスはReaderクラスメソッドまたはInputStreamReaderクラスの両方のメソッドを使用してオブジェクトを作成できます。
FileReaderクラスを使用してファイルを読み取るときは、最初にFileReader()Constructorを呼び出してFilReaderクラスのオブジェクトを作成し、次にread()メソッドを呼び出す必要があります。 FileReaderコンストラクターの形式は次のとおりです。
Public FileReader(文字列名);
[例] filreaderクラスを使用して、プレーンテキストファイルの内容を読む
Java.io。*;クラスEP10_1 {public static void main(string args [])throws {char a [] = new char [1000]; 「EP10_1.txt」); b.read(a);文字列システムへの配列。
Javaは漢字または英語の文字を1つのキャラクターとして扱い、キャリッジのリターンまたはラインが2つのキャラクターとして壊れることに注意する必要があります。
BufferedReaderクラスを使用してファイルを読み取ります
BufferedReaderクラスは、バッファ内のデータを読み取るために使用されます。それを使用するときは、FileReaderクラスオブジェクトを作成し、このオブジェクトをパラメーターとして使用してBufferedReaderクラスのオブジェクトを作成する必要があります。 BufferedReaderクラスには2つのコンストラクターがあり、その形式は次のとおりです。
Public BufferedReader(Reader in);
[例] BufferedReaderクラスを使用して、プレーンテキストファイルの内容を読み取る
Java.IO新しいbufferedreader(a); .out.println( "/n a合計の合計"+count+"lines"がread; b.close();} catch(ioexception io){system.out.println( "error!"+io);}}}}}}}}}}
read()またはwrite()メソッドを実行すると、IOエラーを実行するステートメントを実行し、TRYブロックに含めて処理する必要があるため、システムはIOException例外をスローする場合があります。対応するキャッチブロック。