レッスン:基本的なI/O
このレッスンでは、基本的なI/O処理に使用されるJavaプラットフォーム・クラスについて説明します。はじめに、I/O操作を大幅に簡素化する強力な概念である、
I/Oストリームを取り上げます。 次に、シリアライズについて確認します。シリアライズを利用すると、プログラム内でオブジェクト全体をストリームに書き出したり、再度オブジェクトに読み込んだりすることができます。 その後で、ランダム・アクセス・ファイルを含む、ファイルI/Oとファイル・システムの操作について説明します。
I/Oストリーム
セクションに記載したクラスの大部分は、java.io
パッケージに含まれています。 ファイルI/O
セクションに記載したクラスの大部分は、java.nio.file
パッケージに含まれています。
- バイト・ストリームは、RAWバイナリ・データのI/Oを処理します。
- 文字ストリームは文字データのI/Oを処理し、ローカル文字セットとの間で自動的に変換します。
- バッファ・ストリームはネイティブAPIコールの数を減らすことで、入力と出力を最適化します。
- スキャンとフォーマットを使用すると、フォーマットされたテキストの読取りと書込みをプログラムで実行できます。
- コマンドラインを使用したI/Oでは、標準ストリームとコンソール・オブジェクトについて説明します。
- データ・ストリームは、プリミティブ・データ型と
String
値のバイナリI/Oを処理します。
- オブジェクト・ストリームは、オブジェクトのバイナリI/Oを処理します。
このコースで説明した重要なポイントについてまとめます。
このコースで学習した内容に関する設問や演習に挑戦してみましょう。
実際に使用されているI/Oクラス
次のコースのカスタム・ネットワーキングにある多くの例では、ネットワーク接続に対する読取りと書込みを実行するために、このレッスンで説明したI/Oストリームが使用されています。
セキュリティ上の考慮事項:一部のI/O操作を実行するには、現在のセキュリティ・マネージャによる承認が必要になります。 このコースのレッスンに含まれるサンプル・プログラムはスタンドアロン・アプリケーションであるため、デフォルトでセキュリティ・マネージャは含まれていません。 アプレットとして使用する場合、これらの例のほとんどを変更する必要があります。 アプレットに課せられたセキュリティ上の制約について、詳しくは
アプレットにできること、できないことを参照してください。