程序没有报错,但是写入文件的boolean变量明明是true 读出来的却是false。不知道问题出在哪?请大家帮我分析下吧。谢谢
Private Sub Form_Load()
Dim AutoZeroEn As Boolean
Dim IsSaveFlag As Boolean
Dim SaveAsFileName As String
AutoZeroEn = True
IsSaveFlag = TrueOpen App.Path & "\config.dat" For Output As #1
Write #1, 2, AutoZeroEn, IsSaveFlag, "Null"
Close #1
Print "read begin!"
If Dir(App.Path & "\config.dat") <> "" Then
 Open App.Path & "\config.dat" For Input As #1
 Input #1, intPort, AutoZeroEn, IsSaveFlag, SaveAsFileName
 
  If AutoZeroEn Then
  Print " AutoZeroEn is true"
 Else
  Print " AutoZeroEn is false"
 End If
 
 If IsSaveFlag Then
 Print " IsSaveFlag is true"
 Else
 Print " IsSaveFlag is false"
 End If
 
 Print SaveAsFileName
End If
Close #1
End Sub

解决方案 »

  1.   

    我讲这段代码去掉
    Open   App.Path   &   "\config.dat"   For   Output   As   #1 
    Write   #1,   2,   AutoZeroEn,   IsSaveFlag,   "Null" 
    Close   #1 
    读已经存在的config.dat文件
    还是存在读boolean变量不对的问题。 
      

  2.   

    我在一个bas模块文件中声明intPort为public整型了。
      

  3.   

    我这边试了,读出来的是true的。Option ExplicitPrivate Sub Form_Load()
        Dim AutoZeroEn     As Boolean
        Dim IsSaveFlag     As Boolean
        Dim SaveAsFileName     As String
        Dim intPort As Integer
        
        AutoZeroEn = True
        IsSaveFlag = True
        
        Open App.Path & "\config.dat" For Output As #1
            Write #1, 2, AutoZeroEn, IsSaveFlag, "Null"
        Close #1
        Print "read   begin!"
        If Dir(App.Path & "\config.dat") <> "" Then
            Open App.Path & "\config.dat" For Input As #1
                Input #1, intPort, AutoZeroEn, IsSaveFlag, SaveAsFileName
            
                If AutoZeroEn Then
                    Print "   AutoZeroEn   is   true"
                Else
                    Print "   AutoZeroEn   is   false"
                End If
                
                If IsSaveFlag Then
                    Print "   IsSaveFlag   is   true"
                Else
                    Print "   IsSaveFlag   is   false"
                End If
                
                Print SaveAsFileName
            Close #1
        End If
    End Sub
      

  4.   

    注释了生成文件也正确的。文件内容为2,#TRUE#,#TRUE#,"Null"
      

  5.   

    THANK YOU 
    我还不知道怎么给你加分