我有一个以UTF-8格式保存的文本文件,但当我尝试读取该文件时,它显示的是奇怪的字符,而不是正确的字符(其中包含中文字符)。我该如何使其显示正确的中文字符呢?
Option Explicit
Dim objFSO, strTextFile, strData, strLine, arrLines, aniTextFile, aniData, aniLines, aniLine, objTextFile, fso, inputFileList, listFile, fname
Dim iim1, iret, iret2, iret3, i
Const ForReading = 1
Set objFSO = CreateObject("Scripting.FileSystemObject")
strTextFile = "C:\Users\admin\Desktop\ArtistCG\folder.txt"
strData = objFSO.OpenTextFile(strTextFile,ForReading).ReadAll
arrLines = Split(strData,vbCrLf)
aniTextFile = "C:\Users\admin\Desktop\ArtistCG\folder-list.txt"
aniData = objFSO.OpenTextFile(aniTextFile,ForReading).ReadAll
aniLines = Split(aniData,vbCrLf)
For i = 0 To UBound(arrLines)
strData = objFSO.OpenTextFile(arrLines(i),ForReading).ReadAll
WScript.Echo strData
Set listFile = objFSO.OpenTextFile(aniLines(i),ForReading)
Do While Not listFile.AtEndOfStream
fName = listFile.ReadLine
WScript.Echo fName
Loop
listFile.Close
Next
objStream.ReadText()
方法后不要忘记调用objStream.Close()
。 - OlexaFSO
不能读取 UTF-8,但实际上你可以用FSO
将文件以 ASCII 格式打开,并且 通过循环逐个字符读取内容,然后将这些字符序列转换为字符串 将每个字符视为 UTF-8 编码文件的一个字节。这只是一种学术兴趣;ADODB.Stream
明显更加高效。 - omegastripes