System.SysUtils.EInOutError
Delphi
EInOutError = class(Exception)
C++
class PASCALIMPLEMENTATION EInOutError : public Exception
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
class | public | System.SysUtils.pas System.SysUtils.hpp |
System.SysUtils | System.SysUtils |
説明
EInOutError はファイル入出力エラーの例外クラスです。
EInOutError は、I/O チェックが有効な場合、ファイル入出力エラーが起こると発生します。
メモ: Delphi コードでは、
$I+
指令を使用すると、I/O チェックを有効にすることができます。この指令が無効なときに I/O エラーが発生した場合は、アプリケーションで IOResult を呼び出して、そのエラーをクリアする必要があります。
メモ: C++ プログラムでは、I/O チェックはプロジェクト オプションになっています。
エラー コードは、クラス メンバ ErrorCode で参照できます。エラー コードの範囲は 0 から 99 までです(ネイティブ OS エラーの場合)。100 以上のエラー番号は、Delphi の OS エラーを示します。
0 から 99 までの範囲のエラー コードは、OS のエラー状態を表します。すべてのエラーの概要については、OS のドキュメントを参照してください。SysErrorMessage 関数は、OS エラーを説明するテキストを返します。
よくある OS I/O エラーをいくつか以下の表に示します。
番号 |
名前 |
説明 |
100 |
ディスク読み取りエラー |
型付きファイルの末尾(EOF)を越えて Read で読み取ろうとした場合に発生します。 |
101 |
ディスク書き込みエラー |
ディスクがいっぱいになった場合、CloseFile、Write、WriteIn、Flush のいずれかで発生します。 |
102 |
ファイルが割り当てられていません |
Assign または AssignFile を呼び出してファイル変数に名前が割り当てられていない場合、Reset、Rewrite、Append、Rename、Erase のいずれかで発生します。 |
103 |
ファイルが開いていません |
ファイルが開いていない場合、CloseFile、Read、Write、Seek、Eof、FilePos、FileSize、Flush、BlockRead、BlockWrite のいずれかで発生します。 |
104 |
ファイルが入力用に開いていません |
テキスト ファイルが入力用に開いていない場合、そのファイルに対する Read、Readln、Eof、Eoln、SeekEof、SeekEoln のいずれかで発生します。 |
105 |
ファイルが出力用に開いていません |
コンソール アプリケーションを生成しない場合、テキスト ファイルに対する Write または Writeln で発生します。 |
106 |
数値形式が無効です |
テキスト ファイルから Read または Readln で読み取った数値が適切な数値形式に従っていない場合に発生します。 |
ヒント: GUI アプリケーションの開発時にコンソール入出力を提供する必要がある場合、"105 ファイルが出力用に開いていません" のエラーを避けるには、AllocConsole メソッドを使用する必要があります。コンソール入出力コード ブロックの終了後、FreeConsole を呼び出します。
begin
AllocConsole;
Writeln('Console I/O is now enabled.');
{ code block }
FreeConsole;
end;
{
AllocConsole();
printf("Console I/O is now enabled.\n");
/* code block */
FreeConsole();
}
関連項目
- System.IOResult
- System.Classes.EStreamError
- System.SysUtils.SysErrorMessage
- 入出力(I/O)エラー
- ファイル入出力のサポート
- ディスクおよびディレクトリ サポート ルーチン
- 標準ルーチンと入出力