モジュール java.base
パッケージ java.io
このパッケージは、データ・ストリーム、直列化、ファイル・システムによるシステム入出力用に提供されています。 ほかで指定がない場合、null引数をこのパッケージの任意のクラスまたはインタフェースのメソッドまたはコンストラクタへ渡すと、
NullPointerException
がスローされます。
オブジェクト直列化
Warning: 信頼できないデータの直列化復元は、本質的に危険であり、回避する必要があります。 「Java SEに対するセキュア・コーディングのガイドライン」の"直列化および直列化復元"セクションに従って、信頼できないデータを慎重に検証する必要があります。
- Javaオブジェクト直列化仕様
- 「シリアル・フィルタリング」ベスト・プラクティス
- シリアル・バー・ツール
- 導入されたバージョン:
- 1.0
-
インタフェースのサマリー インタフェース 説明 Closeable Closeable
は、閉じることができるデータの転送元または転送先です。DataInput DataInput
インタフェースは、バイナリ・ストリームからバイトを読み込み、そこからJavaプリミティブ型のいずれかでデータを再構築するために提供されています。DataOutput DataOutput
インタフェースは、Javaのプリミティブ型があればそのデータを一連のバイトに変換してバイナリ・ストリームに書き込むために提供されています。Externalizable Externalizableインスタンスのクラスのアイデンティティが直列化ストリームに書き込まれるだけで、そのインスタンスの内容を保存および格納するのはクラスの責任です。FileFilter 抽象パス名のフィルタです。FilenameFilter このインタフェースを実装するクラスのインスタンスは、ファイル名にフィルタをかけるために使用されます。Flushable Flushable
は、フラッシュできるデータの転送先です。ObjectInput ObjectInputは、DataInputインタフェースを拡張してオブジェクトの読込みができるようにします。ObjectInputFilter 直列化復元時のクラス、配列の長さ、およびグラフのメトリックをフィルタリングします。ObjectInputFilter.FilterInfo FilterInfoは、直列化復元されている現在のオブジェクトに関する情報とObjectInputStream
のステータスへのアクセスを提供します。ObjectInputValidation グラフ内のオブジェクトの検証を可能にするコールバック・インタフェースです。ObjectOutput ObjectOutputは、DataOutputインタフェースを拡張してオブジェクトの書込みができるようにします。ObjectStreamConstants オブジェクト直列化ストリームに書き込まれる定数です。Serializable クラスの直列化可能性は、java.io.Serializableインタフェースを実装するクラスによって有効になります。 -
クラスのサマリー クラス 説明 BufferedInputStream BufferedInputStream
は、ほかの入力ストリームに機能、特に入力をバッファに格納する機能とmark
およびreset
メソッドをサポートする機能を追加します。BufferedOutputStream バッファリングされた出力ストリームを実装します。BufferedReader 文字、配列、行をバッファリングすることによって、文字型入力ストリームからテキストを効率良く読み込みます。BufferedWriter 文字をバッファリングすることによって、文字、配列、または文字列を効率良く文字型出力ストリームに書き込みます。ByteArrayInputStream ByteArrayInputStream
は、ストリームから読み込むことができるバイトを格納する内部バッファを保持しています。ByteArrayOutputStream データがバイト配列に書き込まれる出力ストリームを実装します。CharArrayReader 文字入力ストリームとして使用する文字バッファを実装します。CharArrayWriter Writerとして使用する文字バッファを実装します。Console 現在のJava仮想マシンに関連付けられている文字ベースのコンソール・デバイスがある場合に、そのコンソール・デバイスにアクセスするためのメソッドです。DataInputStream データ入力ストリームにより、アプリケーションは、プリミティブ型のJavaデータをベースとなる入力ストリームからマシンに依存せずに読み込むことができます。DataOutputStream データ出力ストリームを使うと、アプリケーションはプリミティブ型のJavaデータを移植性のある形で出力ストリームに書き込むことができます。File ファイルおよびディレクトリのパス名の抽象表現です。FileDescriptor ファイル記述子クラスのインスタンスは、開いたファイル、開いたソケット、またはバイトの別のソース(シンク)を表す、ベースとなるマシン固有の構造への不透明なハンドルとして機能します。FileInputStream FileInputStream
は、ファイル・システム内のファイルから入力バイトを取得します。FileOutputStream ファイル出力ストリームは、File
またはFileDescriptor
にデータを書き込むための出力ストリームです。FilePermission このクラスは、ファイルまたはディレクトリへのアクセスを表します。FileReader デフォルトのバッファ・サイズを使用して、文字ファイルからテキストを読み取ります。FileWriter デフォルトのバッファ・サイズを使用して、文字ファイルにテキストを書き込みます。FilterInputStream FilterInputStream
は、データの基本的なソースとして使用するためのその他の入力ストリームを格納します。データを途中で変換することや、追加機能を提供することもあります。FilterOutputStream このクラスは、出力ストリームをフィルタ処理するすべてのクラスのスーパー・クラスです。FilterReader フィルタ処理された文字列ストリームを読み込むための抽象クラスです。FilterWriter フィルタ処理された文字ストリームのための抽象クラスです。InputStream この抽象クラスは、バイト入力ストリームを表現するすべてのクラスのスーパー・クラスです。InputStreamReader InputStreamReaderはバイト・ストリームから文字ストリームへの橋渡しの役目を持ちます。バイトを読み込み、指定されたcharset
を使用して文字にデコードします。LineNumberInputStream 非推奨。 このクラスは、文字がバイトによって適切に表現されるという誤った認識を前提としています。LineNumberReader 行番号を追跡して管理する、バッファリングされた文字入力ストリームです。ObjectInputFilter.Config システム全体のフィルタを設定して取得するか、パターン文字列からフィルタを作成するユーティリティ・クラス。ObjectInputStream 事前にObjectOutputStreamを使って作成されたプリミティブ・データとプリミティブ・オブジェクトを直列化復元します。ObjectInputStream.GetField 入力ストリームから読み込まれた持続フィールドへのアクセスを提供します。ObjectOutputStream ObjectOutputStreamは、プリミティブ・データ型とJavaオブジェクトのグラフをOutputStreamに書き込みます。ObjectOutputStream.PutField ObjectOutputに書き込まれる持続フィールドへのプログラムによるアクセスを提供します。ObjectStreamClass クラスの直列化の記述子です。ObjectStreamField 直列化可能クラスからの直列化可能フィールドの記述です。OutputStream この抽象クラスは、バイト出力ストリームを表現するすべてのクラスのスーパー・クラスです。OutputStreamWriter OutputStreamWriterは、文字ストリームからバイト・ストリームへの橋渡しの役目を持ちます。それに書き込まれた文字は、指定されたcharset
を使用してバイトにエンコードされます。PipedInputStream パイプで連結された入力ストリームは、パイプで連結された出力ストリームに接続するようにします。これによって、パイプで連結された入力ストリームが提供するデータ・バイトは、パイプで連結された出力ストリームにすべて書き込まれます。PipedOutputStream パイプで連結された出力ストリームをパイプで連結された入力ストリームに接続することで、通信パイプを作成することができます。PipedReader パイプによる文字入力ストリームです。PipedWriter パイプによる文字出力ストリームです。PrintStream PrintStream
は、ほかの出力ストリームに機能、具体的には、さまざまなデータ値の表現を簡易的に出力する機能を追加します。PrintWriter オブジェクトの書式付き表現をテキスト出力ストリームに出力します。PushbackInputStream PushbackInputStream
は、内部バッファにプッシュバックされたバイトを格納することによって、別の入力ストリーム、つまり"プッシュバック"または"unread"バイトへの機能性を追加します。PushbackReader 文字をストリームにプッシュ・バックできる文字ストリーム・リーダーです。RandomAccessFile このクラスのインスタンスは、ランダム・アクセス・ファイルに対する読取りと書込みの両方をサポートします。Reader 文字ストリームを読み込むための抽象クラスです。SequenceInputStream SequenceInputStream
は、ほかの入力ストリームを論理的に連結したものを表します。SerializablePermission 直列化可能アクセス権のためのクラスです。StreamTokenizer StreamTokenizer
クラスは、入力ストリームを引数に取り、それを「トークン」に構文解析し、一度に1つのトークンを読めるようにします。StringBufferInputStream 非推奨。 このクラスでは、文字からバイトへの変換が正しく行われません。StringReader ソースが文字列の文字ストリームです。StringWriter 出力を文字列バッファに集める文字ストリームです。この文字列バッファを使って文字列を構築します。Writer 文字ストリームに書き込むための抽象クラスです。 -
列挙型のサマリー 列挙型 説明 ObjectInputFilter.Status クラス、配列の長さ、参照数、深さ、およびストリーム・サイズのチェックのステータス。 -
例外のサマリー 例外 説明 CharConversionException 文字変換で発生する例外の基底クラスです。EOFException 入力の途中で、予想外のファイルの終了、または予想外のストリームの終了があったことを表すシグナルです。FileNotFoundException 指定されたパス名で示されるファイルが開けなかったことを通知します。InterruptedIOException 入出力処理で割込みが発生したことを通知するシグナルを発生させます。InvalidClassException 直列化ランタイムが、クラスについて次の問題のどれかを検出したときにスローされます。InvalidObjectException 1つ以上の直列化復元オブジェクトが検証をパスしなかったことを示します。IOException 何らかの入出力例外の発生を通知するシグナルを発生させます。NotActiveException 直列化または直列化復元がアクティブではない場合にスローされます。NotSerializableException インスタンスが直列化可能インタフェースを持つ必要がある場合にスローされます。ObjectStreamException オブジェクト・ストリーム・クラスに固有の例外すべてのスーパー・クラスです。OptionalDataException プリミティブ・データが読み込まれていないか、またはデータの終わりがストリーム内の直列化オブジェクトにあるため、オブジェクトの読込み操作が失敗したことを示す例外です。StreamCorruptedException オブジェクト・ストリームから読み込まれた制御情報が、内部整合性検査に違反していた場合にスローされます。SyncFailedException 同期(sync)オペレーションが失敗したことを通知します。UncheckedIOException IOException
を非チェック例外でラップします。UnsupportedEncodingException 文字のエンコーディングがサポートされていません。UTFDataFormatException 不正な構造を持つ修正UTF-8形式の文字列が、データ入力ストリーム内に読み込まれたか、またはデータ入力インタフェースを実装するクラスによって読み込まれたことを示します。WriteAbortedException 書込み時にObjectStreamExceptionsの1つがスローされたことを通知します。 -
エラーのサマリー エラー 説明 IOError 重大な入出力エラーが発生したときにスローされます。