HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2017
0725
太郎ファイル操作時の結果確認について6解決


太郎

リンク

2017/7/25(Tue) 13:01:51|NO.80704

標準命令のbsaveやnotesave、bcopyなどのファイル書き込みが発生する命令のヘルプを見ても、書き込みの成否によりstatに値が返るなどの仕様が見当たりません。

 このような命令はアクセス権やドライブの空き容量など様々な要因により失敗する場合があるので、書き込みの成否を確認できるようにしていただけないでしょうか。

 また、保存先の指定ミス(存在しないドライブの指定時など)には現在エラー12となってしまいますが、ファイルを開き、編集途中でドライブを抜いてしまうユーザの存在は想定の範囲内であるべきかと思います。

 以上より、ファイル書き込みの後は必ずstat=書き込みファイルサイズ、-1で失敗などとしていただけないでしょうか。



この記事に返信する


kanahiron

リンク

2017/7/25(Tue) 13:45:38|NO.80705

bsaveやnotesaveはstatではなくstrsizeに書き込まれたサイズが帰ります
失敗はエラー12になってしまいますが

ファイル操作系は確かにstatの戻り値で1で失敗、0で成功などとしたほうが便利ですね



taro

リンク

2017/7/27(Thu) 14:26:18|NO.80710

strsizeって、レファレンスでは「読み出しバイト数」ってなってたので、気付きませんでした。

 やはりbsaveやnotesaveのレファレンスには記載が望まれるかと思います。


 そして、エラー12にはいつも悩まされています。
 仕方なくdirlistで書き込み先フォルダの一覧取得をしてアクセス果皮を判定していますが、こんな邪道な方法は処理と結果格納用メモリの無駄でしかありません。



ソラ(元スペース)

リンク

2017/7/27(Thu) 16:11:22|NO.80711

>>エラー12にはいつも悩まされています。
existじゃダメなんですか?



taro

リンク

2017/7/29(Sat) 13:27:40|NO.80735

>> existじゃダメなんですか?
既存ファイルへの上書きの際はよいのですが、新規ファイル作成時はこれでは無理です。



ソラ(元スペース)

リンク

2017/7/29(Sat) 13:52:45|NO.80736

言われてみれば、ドライブとかフォルダが存在しない場合はexistは意味なかったですね。



葡萄色

リンク

2017/7/29(Sat) 20:21:15|NO.80741

今のところは、こちらのページに紹介されているやり方でフォルダの有無を確認する他なさそうですね。
http://lhsp.s206.xrea.com/hsp_folder.html#1

私もファイル操作系の命令の仕様は不親切な気がします。



ONION software Copyright 1997-2021(c) All rights reserved.