SSブログ

Windows Script Host(WSH)でのUTF-8テキストファイル操作 [Windows]

FileSystemObject(OpenTextFile)ではUTF-8のファイルが正しく扱えない(文字化けする)
ので、ADODB.Streamを用いて処理する。

参考:http://msdn.microsoft.com/ja-jp/library/cc364272.aspx

【テキストファイル中の文字列を置換して別ファイルに保存する】

set instream = createobject("adodb.stream")
set outstream = createobject("adodb.stream")

set re = new regexp

infilename = "src.txt"
outfilename = "dst.txt"

instream.open
instream.charset = "UTF-8"
instream.loadfromfile infilename
if err.number > 0 then
  wscript.echo "Can't open " & infilename & " for reading."
  instream.close
  wscript.quit(1)
end if

outstream.open
outstream.charset = "UTF-8"

do until instream.eos
  line = instream.readtext(-2)
  re.pattern = "hoge"
  if re.test(line) then
    line = re.replace(line, "hehe")
  end if
  outstream.writetext line, 1
loop

outstream.savetofile outfilename, 2
if err.number > 0 then
  wscript.echo "Can't open " & outfilename & " for writing."
  outstream.close
  instream.close
  wscript.quit(2)
end if

outstream.close
instream.close

wscript.quit(0)




nice!(1)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 1

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。