VBS读取文本文件函数ReadTextFile

标签: , , , ,

前VBS吧吧主次碳酸钴写的读取文本文件的自定义函数,据说可以自动判断无BOM的UTF-8编码。

Function ReadTextFile(Path)
    'Author 次碳酸钴
    'This Function is useful for no BOM UTF-8
    On Error Resume Next
    Dim Size,Text,Charset
    With CreateObject("ADODB.Stream")
        .Open:.Type=1:.LoadFromFile Path
        Size=.Size:If Size=0 Then Exit Function
        If AscB(.Read(1))<>239 Then Size=Size+3
        .Position=0:.Type=2:.Charset="UTF-8"
        Err.Clear
        Text=.ReadText
        If Err.Number Then
            Charset="Unicode"
        Else
            .Close:.Open
            .WriteText Text
            If Size<>.Size Then
                Charset="GBK"
            Else
                Charset="UTF-8"
            End If
        End If
        .Close:.Open:.Type=1:.LoadFromFile Path
        .Position=0:.Type=2:.Charset=Charset
        ReadTextFile=.ReadText
    End With
End Function

Demon注:仅为复制粘贴,未分析测试,不保证正确性,使用前请自行斟酌。

原文链接:http://tieba.baidu.com/p/1539166222

赞赏

微信赞赏支付宝赞赏

随机文章:

  1. 批处理技术内幕:ECHO命令
  2. 在C语言程序中嵌入Lua脚本
  3. 在C语言程序中使用cURL库(libcurl)
  4. 用C语言实现PHP的basename函数
  5. VBS调用WMI遍历搜索硬盘文件并计数

留下回复