|
コエンザイムQ10 さん今日は、Iranoan です。
> 受信メールを「日付+メールのSubject名」というファイル名にて
> テキスト形式ないしは、ワード形式にて保存しようと思い、
> 下記コードを書きましたが、うまいこといきません。
<中略>
> saveas $c;
ファイル名には、「\/:|*?"<>|」は使えません。これらは別の文字に置き換
えるようにしましょう。
例えば、
> $c="D:\\"+$b1+$b2+$b3+$d+ ".doc";
> message $c+"で保存します。";
>
> saveas $c;
の部分を、末尾の様に置き換えます。
因みに
(1) 拡張子を doc にしても、ワード形式になるわけではありません。態々重
たい Word で開く様な命名にしなくても、*.txt にすれば良い
(2) ドライブ直下に沢山のファイルを置くのは止めた方がよい
と思いますけど。
//--------------------------------------------------------------------
$c=$b1+$b2+$b3+$d;
call ChangeCharacter $c, "\\", "¥";
call ChangeCharacter $$return, "/", "/";
call ChangeCharacter $$return, ":", ":";
call ChangeCharacter $$return, "*", "*";
call ChangeCharacter $$return, "?", "?";
call ChangeCharacter $$return, "\"", "”";
call ChangeCharacter $$return, "<", "<";
call ChangeCharacter $$return, ">", ">";
call ChangeCharacter $$return, "|", "|";
$$return = "D:\\"+$$return+ ".doc";
message $$return+"で保存します。";
endmacro;
ChangeCharacter://buffer 中の文字列を置換
##change_char=strlen($$2);
$$string = "";
while(1){
##number = strstr($$1, $$2);
if(##number == -1)break;
else{
##long = strlen($$1);
$$string = $$string + leftstr($$1, ##number) + $$3;
$$1 = rightstr($$1, ##long - ##number - ##change_char);
}
}
return $$string + $$1;
|
|