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. OpenWrt中的Hotplug脚本
  2. 各浏览器禁止内容选中的方式
  3. VBS中没有vbHide常量
  4. JavaScript 类型的包装对象(Typed Wrappers)
  5. EditPlus的VBS语法高亮

留下回复