当前位置: 首页 > 图文教程 > 脚本技术 > VBScript > 用VBS实现的批量gb2312转utf-8,支持拖动

VBScript
VBS教程:对象-正则表达式(RegExp)对象
VBS教程:对象-Matches 集合
VBS教程:对象-Match 对象
VBS教程:对象-Err
VBS教程:对象-Class 对象
VBS教程:VBScript 对象
VBS教程:字符集 (0 - 127)
VBS教程:方法-Test 方法
VBS教程:方法-Replace 方法
VBS教程:方法-Raise 方法
VBS教程:方法-Execute 方法
VBS教程:方法-Clear 方法
VBS教程:函数-Year 函数
VBS教程:函数-WeekDayName 函数
VBS教程:函数-Weekday 函数
VBS教程:函数-VarType 函数
VBS教程:函数-UCase 函数
VBS教程:函数-UBound 函数
VBS教程:函数-TypeName 函数
VBS教程:函数-TimeValue

VBScript 中的 用VBS实现的批量gb2312转utf-8,支持拖动


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 91 ::
收藏到网摘: n/a

复制代码 代码如下:

'/*=========================================================================
' * Intro 拖动所有要转换的gb2312编码文件到这个文件上,程序会将它们自动转换为utf-8编码文件
' * FileName GB2312.To.UTF-8.vbs
' * Author yongfa365
' * Version v1.0
' * WEB http://www.yongfa365.com
' * Email yongfa365[at]qq.com
' * LastModify 2007-10-04 10:42:53
' *==========================================================================*/
Set objArgs = WScript.Arguments
If objArgs.Count>0 Then
If MsgBox("本程序仅支持GB2312到UTF-8的转换"&vbCrLf&"如果您所拖动的文件里有别的格式的文件请点“取消”", vbOKCancel + vbExclamation + vbDefaultButton2, "郑重提醒!!!") = vbOK Then
For I = 0 To objArgs.Count - 1
FileUrl = objArgs(I)
Call WriteToFile(FileUrl, ReadFile(FileUrl, "gb2312"), "utf-8")
Next
End If
Else
MsgBox "请将您要转换的“gb2312文件”拖到这个文件上"&vbCrLf&"程序会将它们自动转换为utf-8文件", vbInformation, "柳永法温馨提示:"
End If
'-------------------------------------------------
'函数名称:ReadFile
'作用:利用AdoDb.Stream对象来读取各种格式的文本文件
'----------------------------------------------------
Function ReadFile(FileUrl, CharSet)
Dim Str
Set stm = CreateObject("Adodb.Stream")
stm.Type = 2
stm.mode = 3
stm.charset = CharSet
stm.Open
stm.loadfromfile FileUrl
Str = stm.readtext
stm.Close
Set stm = Nothing
ReadFile = Str
End Function
'-------------------------------------------------
'函数名称:WriteToFile
'作用:利用AdoDb.Stream对象来写入各种格式的文本文件
'参数:FileUrl-文件相对路径;Str-文件内容;CharSet-编码格式(utf-8,gb2312.....)
'----------------------------------------------------
Function WriteToFile (FileUrl, Str, CharSet)
Set stm = CreateObject("Adodb.Stream")
stm.Type = 2
stm.mode = 3
stm.charset = CharSet
stm.Open
stm.WriteText Str
stm.SaveToFile FileUrl, 2
stm.flush
stm.Close
Set stm = Nothing
End Function