-
OPEN
Stream = OPEN FileName [ FOR [ READ | INPUT ] [ WRITE | OUTPUT ] [ CREATE | APPEND ] [ WATCH ] ] |
データの読み取り、書き込み、作成、または追加のためにファイルを開きます。 ファイルが存在しているか、またはCREATEキーワードが使用されている必要があります。
- CREATEキーワードが指定されている場合は、ファイルが作成されるか、すでに存在する場合は消去されます。
- APPENDキーワードが指定されている場合は、ファイルが開かれた直後にファイルポインタがファイルの終わりに移動されます。
- READまたはWRITEキーワードが指定されていると、入力と出力はバッファーに入れられません。
- INPUTまたはOUTPUTキーワードが指定されていると、入力と出力はバッファーに入れられます。
- WATCHキーワードが指定されている場合、ファイルはselect(2)システムコールを介してインタプリタによって監視されます。
- ファイルから少なくとも1バイトを読み取ることができる場合は、イベントハンドラFile_Read()が呼び出されます。
- 少なくとも1バイトをファイルに書き込める場合は、イベントハンドラFile_Write()が呼び出されます。
- ファイルが正常に開かれると、ストリームオブジェクトが変数Streamに返されます。
デフォルトでは、ストリームはバッファリングされています。 バッファなしのストリームを作成したい場合は、READまたはWRITEキーワードを明示的に使用する必要があります。 |
他の基本的な方言とは異なり、GambasはWRITEキーワードで開かれたファイルの内容を削除することは決してありません。 そのため、新しいコンテンツが古いコンテンツよりも小さい場合、古いファイルバージョンのゴミが新しいファイルの末尾に残ることになります。 これを回避するには、CREATEキーワードを含むファイルを開きます。 |
Errors
Message | Description |
Access forbidden (43) | ファイルへの要求されたアクセスが許可されていないか、pathnameのパス接頭部にあるディレクトリーの1つに対する検索許可が拒否されているか、ファイルがまだ存在せず、親ディレクトリーへの書き込みアクセスが許可されません。 |
File is a directory (46) | FileNameはディレクトリを表します。 代わりに関数Dirを使ってください。 |
File or directory does not exist (45) | FileNameが存在しないか、pathnameのディレクトリコンポーネントが存在しないか、またはダングリングシンボリックリンクです。 |
Out of memory (1) | システムのメモリが不足しました。 |
Device is full (37) | FileNameは作成されましたが、FileNameを含む装置に新しいファイル用のスペースがありません。 |
Not a directory (49) | FileNameでディレクトリとして使用されるコンポーネントは、実際にはディレクトリではありません。 |
System error... (42) |
その他の考えられるシステムエラー:
|
Examples
'テキストファイルの内容を画面に表示します
'シリアルポートを見ている Dim hFile As File 'リトルエンディアン形式を使用することで知られている、BMPファイルからのデータの読み取り
|
コメント
最新を表示する
NG表示方式
NGID一覧