Top/マニュアル/関数/FOPEN
  トップページへ   [ 一覧 | 検索 | 最終更新 ]   [ 差分 | 履歴 ]

#author("2023-04-11T23:51:40+09:00","","")
#navi(マニュアル/関数)

* FOPEN [#x1b339a5]

** 形式 [#s3895715]

> FOPEN( '''path''' , '''option''' )

** 機能 [#dfa57243]

- ファイルをオープンします。
-- ファイルへの読み書きを行う前に、FOPENでファイルをオープンする必要があります。
-- テキストアクセスを行う際は、FOPENの前にFCHARSETを実行することで文字コードを変更できます。

** 引数 [#v70c84a9]

:path|ファイル名。フルパス指定可能。相対パスの場合はDLL loadで渡された位置が基準となります。
:option|ファイルをどのように開くかを指定します。以下の「モード」または「別名」の文字列を指定します。

- 要するにC言語のfopenと一緒です。
-- YAYA内の実装もC言語のfopenです。

- テキストアクセスの場合、0x0d-0x0aの並び(CR-LF)は読み込み前に単一の0x0aに変換されます。逆に、書き込み時は 0x0a が 0x0d-0x0a に変換されます。また、0x1a は EOF として特別な意味を持ちます。
- ランダムアクセスの際、ファイルの読み込み位置の指定はFSEEKで可能。位置取得はFTELLで行う。

*** テキストアクセス [#d7ead0a3]

|モード|別名|動作|ファイルがあるとき|ファイルがないとき|
|モード|別名|動作|ファイルがあるとき|ファイルがないとき|h
|"r"|"read"|テキスト読み出し|正常|エラー|
|"w"|"write"|テキスト書き込み|サイズを 0 にする(上書き)|新規作成|
|"a"|"append"|テキスト追加書き込み|最後に追加する|新規作成|

*** バイナリアクセス [#h7ec5217]

|モード|別名|動作|ファイルがあるとき|ファイルがないとき|
|モード|別名|動作|ファイルがあるとき|ファイルがないとき|h
|"rb"|"read_binary"|バイナリ読み出し|正常|エラー|
|"wb"|"write_binary"|バイナリ書き込み|サイズを 0 にする(上書き)|新規作成|
|"ab"|"write_binary_append"|バイナリ追加書き込み|最後に追加する|新規作成|

*** ランダムアクセス [#c9d262c2]

|モード|別名|動作|ファイルがあるとき|ファイルがないとき|
|モード|別名|動作|ファイルがあるとき|ファイルがないとき|h
|"r+"|"read_random"|テキスト読み書き|正常|エラー|
|"w+"|"write_random"|テキスト読み書き|サイズを 0 にする(上書き)|新規作成|
|"a+"|"append_random"|テキスト読み書き|最後に追加する|新規作成|
|"rb+"|"read_binary_random"|バイナリ読み書き|正常|エラー|
|"wb+"|"write_binary_random"|バイナリ読み書き|サイズを 0 にする(上書き)|新規作成|
|"ab+"|"append_binary_random"|バイナリ読み書き|最後に追加する|新規作成|

** 返り値 [#w160834f]

- 成功した場合、1
- 失敗した場合、0
- 既にオープンしている場合、2

** 関連 [#q89e2af1]

- [[マニュアル/関数/FCHARSET]]
- [[マニュアル/関数/FCLOSE]]
- [[マニュアル/関数/FSEEK]]
- [[マニュアル/関数/FTELL]]
** バージョン [#mb5ca779]

- YAYA:初期から利用可能
-- バイナリアクセス、ランダムアクセス:TC529-2
- AYA5.8で利用可能(テキストアクセスのみ)

** 例 [#z0d209c7]

-NOWPRINTING
-誰か記載してください!

#navi(マニュアル/関数)