使用vbs脚本uft8toansi进行文件编码转换

您所在的位置:网站首页 txt怎么转vbs 使用vbs脚本uft8toansi进行文件编码转换

使用vbs脚本uft8toansi进行文件编码转换

2024-06-11 15:53| 来源: 网络整理| 查看: 265

控制台里面编译.java文件,如果源文件字符编码是utf-8或者其他编码格式,就会报错,如图: 这里写图片描述 如果每次都打开另存为ansi比较麻烦,就想着windows有没有批处理功能。百度了很久批处理没有结果,最后使用vbs来转换。将代码内容保存,文件名为uft8toansi.vbs。就能使用:

uft8toansi srcFile tarFile '另存为 uft8toansi srcFile '进行替换

可以使用绝对路径,也可以将uft8toansi.vbs的路径添加到path中在任意路径下使用。下面代码实现了基本的功能。

'vbs获得当前路径 Set args = WScript.Arguments If args.Count = 2 Then strFile= WScript.Arguments(0) tarFile= WScript.Arguments(1) ElseIf args.Count = 1 Then strFile= WScript.Arguments(0) tarFile= strFile Else Msgbox "uft8toansi使用方法为: uft8toansi strFile tarFile" End If Set ws=WScript.CreateObject("wscript.shell") w=ws.CurrentDirectory 'F:\java控制台运行\tmp\test.vbs Set fso=WScript.CreateObject("scripting.filesystemobject") '控制台调用时的当前路径 如: F:\java控制台运行\tmp '如果在任意路径使用set path=path;F:\java控制台运行\tmp\ 然后test.vbs显示的控制台当前路径 Set fs=fso.GetFolder(w) 'Set f=fso.SubiFolders 'For Each uu In f ' t=t & uu.Path & vbcrlf 'Next 'strFilePath = fs.path & strFile 'tarFilePath = fs.path & tarFile 'MsgBox strFilePath & "---superman---" & tarFilePath dim ADOStrm dim s Set ADOStrm = CreateObject("ADODB.Stream") ADOStrm.Type = 2 ADOStrm.Mode = 3 ADOStrm.CharSet = "utf-8" ADOStrm.Open ADOStrm.LoadFromFile strFile s = ADOStrm.ReadText ADOStrm.Position = 0 ADOStrm.CharSet = "gbk" ADOStrm.WriteText s ADOStrm.SetEOS ADOStrm.SaveToFile tarFile, 2 ADOStrm.Close Set ADOStrm = Nothing


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3