如何将UTF-8编码的字符串写入vba的文本文件中,如
Dim fnum As Integer
fnum = FreeFile
Open "myfile.txt" For Output As fnum
Print #fnum, "special characters: äöüß" 'latin-1 or something by default
Close fnum
Run Code Online (Sandbox Code Playgroud)
应用程序级别是否有一些设置?
它可能很简单,这是我尝试过的:
Set objStream = CreateObject("ADODB.Stream")
Set objStreamNoBOM = CreateObject("ADODB.Stream")
With objStream
.Open
.Charset = "UTF-8"
.WriteText "aaaaaa"
.Position = 0
End With
With objStreamNoBOM
'.Charset = "Windows-1252" ' WORK
.Charset = "UTF-8" ' DOESN'T WORK!!
.Open
.Type = 2
.WriteText objStream.ReadText
.SaveToFile "toto.php", 2
.Close
End With
objStream.Close
Run Code Online (Sandbox Code Playgroud)
如果字符集是UTF-8,那么文件的开头就有ï».
有关如何使用UTF-8和没有BOM保存文件的任何想法?