|
Last-modified: 2009-09-11 (金) 00:04:30 (5555d)
WSHやExcel VBAマクロでファイルの文字コード変換をしたい場合は、ADODB.Streamで。 ファイルの文字コードをShift-JISからUTF-8に変える †Sub SJIS2UTF8(FilePath As String) '元のファイルストリーム(Shift_JIS) Set stream1 = CreateObject("ADODB.Stream") With stream1 .Type = 2 'adTypeBinary=1, adTypeText=2 .Charset = "shift-jis" .Open .LoadFromFile FilePath .Position = 0 End With 'UTF-8化 Set stream2 = CreateObject("ADODB.Stream") With stream2 .Type = 2 'adTypeBinary=1, adTypeText=2 .Charset = "utf-8" .Open End With stream1.CopyTo stream2 'UTF-8ファイルの先頭BOMを削除 Set stream3 = CreateObject("ADODB.Stream") With stream3 .Type = 1 'adTypeBinary=1, adTypeText=2 .Open End With stream2.Position = 3 stream2.CopyTo stream3 stream3.Savetofile FilePath, 2 'adSaveCreateNotExist=1, adSaveCreateOverWrite=2 stream3.Close stream2.Close stream1.Close End Sub |