質問
ファイルシステム読み取りでストレージのファイル(test.txt)を読み取った結果を確認するとBase64でエンコーディングされていますが、これは仕様でしょうか?また、ファイルシステム書き込みで「作成または更新を行うファイルの内容をBase64形式またはバイナリ形式で入力します」とありますが、Base64でエンコーディングしていないバイナリデータはそのままストレージに格納され、Base64でエンコーディングしているバイナリデータはデコードされてストレージに格納されるという認識で合っていますか?
回答
■ファイルシステム読み取りについて
ファイルシステム読み取りでは、読み取った結果をバイナリ形式で出力します。
HULFT Squareでは、バイナリ型のデータを文字列データとして実行ログに出力する場合、Base64形式に変換する仕様があります。そのため、実行ログ上はBase64形式のデータ(例:「abc」→「YWJj」)として表示されますが、データ自体はバイナリ形式で出力されています。
例:
- ファイルの中身が「abc」の場合、実行ログには「YWJj」(Base64形式)と表示されます
- しかし、実際の出力データはバイナリ形式(2進数表現)です
■ファイルシステム書き込みについて
はい、ご認識の通りです。
- Base64でエンコーディングされていないバイナリデータは、ファイルデータとしてストレージに格納されます
- Base64でエンコーディングされているバイナリデータは、HULFT Squareの内部処理にてBase64形式からバイナリ形式にデコードされた後、ファイルデータとしてストレージに格納されます
補足
参考マニュアル・FAQ:
- データ型(バイナリ型のデータを文字列データに出力する場合の仕様について記載)
- 文字列データやJSON形式のデータをBase64形式へエンコードすることは可能ですか
コメント
0件のコメント
記事コメントは受け付けていません。