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


HSPTV!掲示板


未解決 解決 停止 削除要請

2011
0615
ケンゴログをテキストファイルにまとめて保存3解決


ケンゴ

リンク

2011/6/15(Wed) 20:17:51|NO.39675

表示した文字を全文まとめてテキストファイルに保存させたいのですがどうすればいいのでしょうか?



この記事に返信する


ひらまる

リンク

2011/6/15(Wed) 22:40:59|NO.39681

表示した文字をどのように表示したのかはわかりませんが、
それが仮に文字列型変数に代入されているとしたら、

表示内容 = "保存する文字列" notesel 表示内容 notesave "保存ファイル名.txt"
でできます。
noteselやnotesaveなどの命令はHSPヘルプで確認してください。



木村

リンク

2011/6/16(Thu) 06:33:28|NO.39688

>>ログをテキストファイルにまとめて保存
>>表示した文字を全文まとめてテキストファイルに保存させたいのですがどうすればいいのでしょうか?

 私の文章理解力が足りないせいだとは思いますが、ケンゴさんが一体何を保存したいのかが分かりませんでした。
 タイトル通りならlogmes命令で記録されるログですし、書き込み通りならmes命令やらprint命令やらes_mes命令やらのmes類命令で表示された物全ての記録を保存したいという風に聞こえます。
 ですので、今回はタイトルの側の意味、つまりlogmes命令で記録したデータの全てを保存したいと言う意味に解釈させていただきます。もし、ケンゴさんが望むのが、mes類命令全ての記録だったと言う事でしたらあらかじめお詫びいたします。御無礼をば。

 で、本題ですが、logmes命令をマクロを利用して改造してしまえば、問題は解決するかと思います。また、mes類命令で用いたデータを保存したい場合も、変換マクロを複数用意するだけの事なので原則的に違いは無いと思います。以下は一例

#module newlog #undef logmes #define global logmes(%1) function_logmes str(%1) #define SAVE_NAME strf("ログの%%04dページ目.txt",ページ数) //事前準備、これをしないと上手く動かない #deffunc prepare_newlog str dir ログ = "" ページ数 = 0 ディレクトリ = dir return //改造logmes命令の正体 #deffunc function_logmes str log logmes@hsp log ログ = ログ+"\n"+log if strlen(ログ) > 2000 : save_log return //ログを保存する命令 #deffunc save_log local pre_dir if ディレクトリ = 0 : return 1 pre_dir = dir_cur chdir ディレクトリ bsave SAVE_NAME, ログ ログ = "" ページ数+ chdir pre_dir return 0 //終了時にログを保存する設定にする命令 #deffunc exit_save_log onexit *終了時 return //exit_save_log命令発令後は終了時にこのフラグに移動する *終了時 save_log end #global prepare_newlog dir_cur exit_save_log logmes "GEARF" logmes "FEARF"



ケンゴ

リンク

2011/6/17(Fri) 18:00:07|NO.39700

みなさんおありがとうございましたー



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