首页 电脑 电脑学堂 查看内容

用VBScript写合并文本文件的脚本

2009-9-24 16:31 591 0

摘要:   今天用脚本实现几个文本文件的合并,被FSO中的几个函数绊住了好久,最终认定这里应该是Window里的Bug。   合并文本的脚本可以这么写:   代码如下:   Sub AppendText...

  今天用脚本实现几个文本文件的合并,被FSO中的几个函数绊住了好久,最终认定这里应该是Window里的Bug。   合并文本的脚本可以这么写:   代码如下:   Sub AppendTextFile(filename)   Set objTextFile = objFSO.OpenTextFile(filename, ForReading, true, -2)   Do Until objTextFile.AtEndOfStream   objOutFile.WriteLine(objTextFile.Readline)   Loop   End Sub   可是如果所读取的文件是UTF-8格式的,那么文件开头的三个字节的标识符会被脚本认为是数据,这样这个标识符就变成了合并后文件里的乱码。   FSO是提供了打开Unicode文件的参数的,可惜这里并不生效。   TristateUseDefault   -2   Opens the file using the system default.   TristateTrue   -1   Opens the file as Unicode.   TristateFalse   0   Opens the file as ASCII.   请教了Google大师,发现有人说用OpenAsTextStream是可以的,可惜在我的环境里还是不成功。   另外一个想法是读入文件的时候,自行判断文件开始三个字节是否标识符,这也被判断是不可行的方法,因为FSO提供的Read是按字符进行读取,这样,在有中文的环境里,我们不可能正好读出这三个字节。   类似的问题在IIS6里面被微软确认,好像也有一个对应的补丁出来,但是对于批处理文件的情况,似乎还是没有修改过来。   最后,MSDN帮了很大的忙,但是它的地址很不好找,记录一下:   
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部