|   |  
 コエンザイム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; 
 
			 | 
		  
	 |