我的VB IF语句中未处理的错误

时间:2016-05-11 16:02:39

标签: vb.net

我正在尝试使这个IF语句工作,但我收到此错误框。它说NullReferenceException未处理。

这是我的IF声明。

        If URL.Contains("www") = True Then
            objWriter.Write(codeLine23)
            objWriter.WriteLine()
            objWriter.Write(codeLine24)
            objWriter.WriteLine()
            objWriter.Write(URL)
            objWriter.WriteLine()

        Else

        End If

我做错了什么?

由于

肖恩

1 个答案:

答案 0 :(得分:-1)

当您尝试访问值为null的类型的成员时,将引发NullReferenceException异常。 NullReferenceException异常通常反映开发人员错误,并在您忘记实例化引用类型时抛出。

在您的示例中,如果没有关于抛出异常的行的指示,则可能是代码尝试使用任何objWriter,codeLine32,codeLine24或URL变量的任何位置。

假设没有实例化objWriter,你需要在使用它之前创建一个objWriter实例:

        If URL.Contains("www") = True Then
        If ()objWriter Is Nothing) Then
            objWriter  =  New System.IO.StreamWriter( FILE_NAME )
        endif
        objWriter.Write(codeLine23)

        objWriter.WriteLine()
        objWriter.Write(codeLine24)
        objWriter.WriteLine()
        objWriter.Write(URL)
        objWriter.WriteLine()
    Else
    End If