|
|
|
Last-modified: 2009-09-11 (金) 00:04:30 (5893d)
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
|