发新话题
打印

[基础] 用FSO获得文件内容,但不能用Len(str)=0判断文件是否有内容,高手进

用FSO获得文件内容,但不能用Len(str)=0判断文件是否有内容,高手进

本人想Form1_Load事情件中跟据文件File.inf内容是否为空,判断是打开Form1还是先打开Form2
如果File.inf的内容为空,就首先打开Form2窗体,而Form1窗体隐藏,如果File.inf里有内容,就运行Form1就行了。
问题是,当我把Len(str) = 0作判断,只能打开Form1,不能打开Form2.但我把Len(str)<>0作判断时,就可首先运行
Form2,而不运行Form1了。为什么??
代码如下:
Private Sub Form_Load()
    Dim fsotest As New FileSystemObject
    Dim fil As File
    Dim textstr As TextStream
    Dim str As String
   
    Set fil = fsotest.GetFile(App.Path + "\" + "File.inf")
    Set textstr = fil.OpenAsTextStream(ForReading)
    str = textstr.ReadAll
   
   '下面用Len(str)=0是不能打开Form2窗体的
    '如果改为Len(str)<>0就可打开Form2窗体
    if Len(str)=0 then
        Form2.Show
        Form2.Text1.Text = str
        Form1.Hide
    End If
   
    textstr.Close
    Set fsotest = Nothing
End Sub

TOP

VB有很好用的文件函数,为什么非要用脚本的文件对象?
    Open App.Path + "\" + "File.inf" For Input As #1
    If LOF(1) = 0 Then
        Form2.Show
        Form1.Hide
    End If
    Close #1
换个头像,看见广告就眼红,直接封ID。

TOP

发新话题