Load from a File (TEXT)
ASTER::ACTION::JSON::Load from a JSON Formatted File.
JSON ファイルをメモリにロードします。
指定されたファイルパスにある JSON ファイルからデータを読み込み、データの解析が実行された後、内容にエラーが無かった場合 JSON データがメモリに展開されます。
--- title: Load from a JSON Formatted File --- flowchart LR A[Set a File Path] --> B{The File Exist?} B --> |Yes| C((Check JSON Format)) B --> |No| D[Fail to Load] C --> |Correct| E((Load the Data to Memory)) C --> |Incorrect!| F[Error: Invalid JSON] D --> G[Cancelled] F --> G[Cancelled] E --> H(Loaded)
Parameter
アプリケーション実行ファイルがある場所を「カレントディレクトリ」とします。
カレント以下 ./json/sandbox
というディレクトリにあるファイル 00.json
をロードするサンプルが以下です。
"./json/sandbox/00.json"
current application folder/
└── json/
└── sandobox/
└── 00.json 👻🙂
-
指定したパスにファイルが存在しない場合、エラーメッセージを表示、処理を直ちに終了。
-
JSON フォーマットデータの解析に失敗した場合、エラーメッセージを表示、ロード処理を直ちに終了します。
注意点.1
編集中データの消失
現在編集中の JSON データがメモリ上にある状態で JSON 読み込み命令が発行された場合、まずメモリポインタ情報を消去されるため、ロードに失敗した場合でも現在編集中のデータは内容が完全に失われます。
注意点.2
エラー ( 例外発生 )
不正な JSON データが読み込まれた場合、例外が発生します。
データ形式の不備によるパースエラーはエラーチェック機能があるテキストエディタを利用することで、読み込み失敗を確実に回避できます。
- お勧めのエディタとしては Visual Studio Code などがあります。
注意点.3
BOM
( バイト・オーダー・マーク ) 付きUTF-8
について。
Windows OS 環境で主に利用される UTF-8 形式の亜種です。 RFC 8259 ( page 9 ) では BOM 付き UTF-8 の利用を認めていません。
ただし現在は、ASTER で UTF-8 with BOM
をロードしてもバイト・オーダー・マークが原因のエラーは発生しません。
正式にサポートはしていないので BOM
付き UTF-8
は利用しないでください。