If dr.Read Then
            For i = 0 To feiyongziduan.Length - 1
                    strLine = strLine & feiyongziduan(i).ToString & Chr(9)
                Next
                objStreamWriter.WriteLine(strLine)
                strLine = ""
                While dr.FieldCount <> 0
                    For i = 0 To dr.FieldCount - 1
                        strLine = strLine & dr.GetValue(i).ToString & Chr(9)
                    Next
                    objStreamWriter.WriteLine(strLine)
                    strLine = ""
                End While
                
            Else
                  Console.Write("没有查到需要的数据!!")
            End If

解决方案 »

  1.   

    你在If Not dr.Read Then
    这句中已经读了一次了。
      

  2.   

    还是不行
    刚才发错了,我写的是:
     dr = cmd.ExecuteReader()
                If dr.Read Then                For i = 0 To feiyongziduan.Length - 1
                        strLine = strLine & feiyongziduan(i).ToString & Chr(9)
                    Next
                    objStreamWriter.WriteLine(strLine)
                    strLine = ""
                    While dr.Read
                        For i = 0 To dr.FieldCount - 1
                            strLine = strLine & dr.GetValue(i).ToString & Chr(9)
                        Next
                        objStreamWriter.WriteLine(strLine)
                        strLine = ""
                    End While
                Else
                    Console.Write("没有查到需要的数据!!")
                End If
      

  3.   

    if dr.read()读了一行数据, while dr.read又读了一行数据
      

  4.   

    答案已经说了,就是你在判断是否读时,已经读了一次。Dataread是顺序地向后读的。你改过的代码不是又读了二次吗?请仔细看看 gangganghao(ganggang)的代码。
      

  5.   

    dr = cmd.ExecuteReader()
    bool flag = true
           While dr.Read
                 flag = false
                 For i = 0 To dr.FieldCount - 1
                          strLine = strLine & dr.GetValue(i).ToString & Chr(9)
                  Next
                  objStreamWriter.WriteLine(strLine)
                  strLine = ""
           End While
           if flag then
                   Console.Write("没有查到需要的数据!!")
           End If