fileopen
2024/09/01 15:59
fileopen 機能
[ファイル操作コマンド]ファイルを開きます。
コマンドライン
fileopen <file handle> <file name> <append flag> [<readonly flag>]
機能説明
ファイルをバイナリモードでオープンします。ファイルが存在しない場合は、新たに作成してからオープンします。
なお、バージョン 4.102 および 4.103 では、ファイルが開けなかった場合にエラー終了します。
<file handle>
他のファイルハンドルを利用するコマンドに渡せるファイルハンドルを指定します。閉じないままファイルを開くごとに、別のファイルハンドルを指定する必要があります。
<file name>
ファイルハンドルで利用するファイル名を指定します。<append flag>
<append flag> に指定する数値は、以下の通りです。<append flag> | 数値の意味 |
---|---|
0 | ファイルポインタ (読み書きの現在位置) が、ファイルの始めにセットされます。 |
0以外 | ファイルポインタが、ファイルの最後にセットされます。 |
[<readonly flag>]
バージョン 4.85 以降、[<readonly flag>] の指定内容は、以下の通りです。[<readonly flag>] | 数値の意味 |
---|---|
省略 | 読み書きモードでファイルを開きます。 |
0 | 読み書きモードでファイルを開きます。 |
0以外 | 読み取り専用モードでファイルを開きます。 |
パラメータの説明
指定するパラメータは以下の通りです。パラメータ | 型 | パラメータ説明 |
---|---|---|
<file handle> | 整数 | ファイルハンドル名を指定します。 |
<file name> | 文字列 | オープンするファイル名を指定します。 |
<append flag> | 整数 | ファイルポインタの位置を意味する整数を指定します。 |
<readonly flag> | 整数 | 読み書きモード/読み取り専用モードを指定します。 |
対象バージョン
一部機能は、全てのバージョンで利用可能です。バージョン 4.85 より追加された機能があります。
バージョン 4.102 より 4.103 まで、読み取り専用モード時にファイルがない場合はエラーとなります。
バージョン 4.104 より読み取り専用モード時にファイルがない場合はエラーではならなくなります(元の仕様に戻ります)。
戻り値
戻り値として以下の変数が定義されます。変数名 | 値 | 意味 |
---|---|---|
<file handle> | -1 | ファイルが正しくオープンされなかった |
0*1 | ファイルハンドルが格納された |
関連コマンド
開いたファイルハンドルを利用するコマンド
種別:ファイル操作 | Ver | 機能の簡易説明 |
---|---|---|
fileclose | ファイルハンドルを閉じる。 | |
filelock | 4.74以降 | 開いているファイルをロックする。 |
filemarkptr | ファイルポインタを保存する。 | |
filereadln | ファイルから一行読む。 | |
fileread | 4.48以降 | ファイルを読む。 |
fileseek | ファイルポインタを移動する。 | |
fileseekback | filemarkptr コマンドで保存した位置にファイルポインタを移動する。 | |
filestrseek | 文字列をファイルの先頭から末尾に向かって検索する。 | |
filestrseek2 | 文字列をファイルの末尾から先頭へ向かって検索する。 | |
fileunlock | 4.74以降 | 開いているファイルのロックを解除する。 |
filewrite | ファイルに文字列を書き込む。 | |
filewriteln | ファイルに文字列を改行付きで書き込む。 |
同じようにファイルを開くコマンド
種別:ファイル操作 | Ver | 機能の簡易説明 |
---|---|---|
filecreate | ファイルを作成する。 |
使用方法
使用例
・ファイルポインタをファイルの始めにセットしてオープンする場合fileopen fhandle 'data.dat' 0・ファイルポインタをファイルの最後にセットしてオープンする場合
fileopen fhandle 'data.dat' 1・バッチファイルを作成および実行する場合
fileopen fhandle 'test.bat' 0 filewrite fhandle 'md .\v20080619_Test' fileclose fhandle pause 5 exec 'cmd /c test.bat' pause 10 end
サンプル
以下のサンプルが存在します。備考
バグ情報
バージョン | バグ情報 | 備考 | |
---|---|---|---|
対象 | Fix | ||
- | 4.106 | マクロコマンドで開いたファイルハンドルがロックしている問題が修正されました。 |