主题:读dat文件提示文件未找到
在运行一个统计字符的程序时,发现无法找到dat文件。但其实这个文件和窗体文件、工程文件一起被保存在d:\下,怎么会找不到呢?后来,试着将相对路径换成绝对路径,即,把Open App.Path & "\" & "prog8a.dat" For Input As #1这一句写成Open "d:\prog8a.dat" For Input As #1结果还是不行,仍然提示找不到文件。程序具体代码如下:
Private Sub COMSTART_Click()
Dim Ch As String, Number As Integer, Cp As Integer, Lp As Integer, Others As Integer
myfile1 = App.Path & "\" & "prog8a.dat"
myfile2 = App.Path & "\" & "prog8b.dat"
Open App.Path & "\" & "prog8a.dat" For Input As #1
Open myfile2 For Output As #2
While Not EOF(1)
Input #1, Ch$
If Asc(Ch$) >= 48 And Asc(Ch$) <= 57 Then
Number = Number + 1
ElseIf Asc(Ch$) >= 65 And Asc(Ch$) <= 90 Then
Cp = Cp + 1
ElseIf Asc(Ch$) >= 97 And Asc(Ch$) <= 122 Then
Lp = Lp + 1
Else
Others = Others + 1
End If
Wend
Print #2, Number, Cp, Lp, Others
Close
COMSTART.Caption = "完成"
COMSTART.Enabled = False
End Sub
Private Sub COMSTART_Click()
Dim Ch As String, Number As Integer, Cp As Integer, Lp As Integer, Others As Integer
myfile1 = App.Path & "\" & "prog8a.dat"
myfile2 = App.Path & "\" & "prog8b.dat"
Open App.Path & "\" & "prog8a.dat" For Input As #1
Open myfile2 For Output As #2
While Not EOF(1)
Input #1, Ch$
If Asc(Ch$) >= 48 And Asc(Ch$) <= 57 Then
Number = Number + 1
ElseIf Asc(Ch$) >= 65 And Asc(Ch$) <= 90 Then
Cp = Cp + 1
ElseIf Asc(Ch$) >= 97 And Asc(Ch$) <= 122 Then
Lp = Lp + 1
Else
Others = Others + 1
End If
Wend
Print #2, Number, Cp, Lp, Others
Close
COMSTART.Caption = "完成"
COMSTART.Enabled = False
End Sub