'Excel中VBA转换文件编码到UTF-8
Private Sub ConvFile(InputFile As String, OutputFile As String)
Dim ReadStream As Object
Set ReadStream = CreateObject("ADODB.Stream")
Dim FileContent As String
With ReadStream
.Type = 2 'adTypeText
'.Charset = "UNICODE"
.Charset = "GB2312" ' ANSI
'.Charset = "UTF-8"
.Open
.LoadFromFile InputFile
FileContent = .ReadText
.Close
End With
Set ReadStream = Nothing
Dim WriteStream As Object
Set WriteStream = CreateObject("ADODB.Stream")
With WriteStream
.Type = 2 'adTypeText
.Charset = "UTF-8"
.Open
.WriteText FileContent
.SaveToFile OutputFile, 2 'adSaveCreateOverWrite
.Flush
.Close
End With
Set WriteStream = Nothing
End Sub
'调用:
Dim fileName As String
fileName = ActiveWorkbook.Path & "\" & "test" & ".xml"
Call ConvFile(fileName, fileName)
VBA转换文件编码到UTF-8
最新推荐文章于 2025-04-01 09:47:31 发布