VBscriptで「改行」と「"」を置換させる
VBスクリプトを使ってファイルを置換したいと考えています。
以下のVBSファイルとコマンドを使って、置換することはできました。
が、置換対象が「改行」と「"」の場合、エラーとなって置換できません。
どうすればいいのでしょうか。
よろしくおねがいします。
********コマンド********
(1)cscript replace.vbs "C:\test.txt" "Jim" "Jane"
(2)cscript replace.vbs "C:\test.txt" ""_\n" "a_test"
********VBSファイル(replace.vbs)********
Const ForReading = 1
Const ForWriting = 2
strFileName = Wscript.Arguments(0)
strOldText = Wscript.Arguments(1)
strNewText = Wscript.Arguments(2)
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile(strFileName, ForReading)
strText = objFile.ReadAll
objFile.Close
strNewText = Replace(strText, strOldText, strNewText)
Set objFile = objFSO.OpenTextFile(strFileName, ForWriting)
objFile.WriteLine strNewText
objFile.Close
(1)のコマンドを実行すると、
「Jim」は「Jane」に置換されますが、
(2)のコマンドを実行すると、エラーになり置換されません。
エラーメッセージ:
「Microsoft VBScript 実行時エラー: インデックスが有効範囲にありません。」
よろしくおねがいします。
お礼
notnotさん ご返答ありがとうございます。 またお返事が遅くなり申し訳ございません。 ご返答いただいた内容で確かに実現できました。 今回、vbsを同時に3つ起動して常時動かしたいと考えていて、 ご返答いただいた内容だとexeを3つ作って・・という形になりますよね。 何とか、1つのexeで異なるVBSファイルの実行させ、 違うプロセス名にする事はできないものでしょうか?