【发布时间】:2013-04-01 03:20:36
【问题描述】:
我在一个文件夹中有一堆文本文件,我需要将编码更改为 Unicode,而不是手动打开文件并将它们保存为 Unicode,我想要一个脚本来执行此操作。
这些文件目前采用 UTF-8 编码,而我极其有限的脚本能力无法弄清楚这一点。我发现下面的代码可以从 ANSI 转换为 Unicode,当我使用此代码时,它确实将其转换为 Unicode,但它会弄乱字符,因此转换实际上不起作用。有什么想法吗?提前致谢。
Set fso = CreateObject("Scripting.FileSystemObject")
Set oFolder = fso.GetFolder("C:\test")
Set oFiles = oFolder.files
For each file in oFiles
If Right(file.Name, 3) = "txt" Then
Set ANSIFile = fso.OpenTextFile(file.path, 1, False, False)
ANSIContent = ANSIFile.ReadAll
Set UNICODEFile = fso.OpenTextFile(file.path, 2, False, True)
UNICODEFile.Write ANSIContent
End If
Next
【问题讨论】:
-
"Unicode" 不是编码,您不能将实际文件更改为“Unicode”。 actual encoding 是什么意思?
-
如果您打开一个文本文件并选择文件-> 另存为,“编码”选项之一是“Unicode”。如果我要手动执行此任务,我会打开每个文件并将其保存为同一个文件,编码为 Unicode。
标签: text unicode encoding utf-8 vbscript