用下面一段写数据
While Not rst.EOF
    For i = 0 To rst.Fields.Count - 1
       ts.Write(rst.Fields(i).Value)
       ts.Write(",")
    Next
    ts.Write(vbCrLf)
    rst.MoveNext()
End While如果遇到某个rst.Fields(i).Value是空值的时候
她就不往下写了这个是怎么回事
该怎么处理

解决方案 »

  1.   

    手边没有VB,没办法测试,所以直接给点思路,如果错误了也不要找我算帐啊:P
    if Trim("" & rs("i"))="" then
       ts.write(",")
    else
       ts.write(rs(i))
    end if
      

  2.   

    While Not rst.EOF
        For i = 0 To rst.Fields.Count - 1
           ts.Write(rst.Fields(i).Value & "")  '加上一个空字符串串""就可以了。
           ts.Write(",")
        Next
        ts.Write(vbCrLf)
        rst.MoveNext()
    End While字段值后面加一个空字符串就可以避免因为VALUE是NULL而引起的问题了。
    这是一个非常常用的方法,楼主可要记住了哦。
      

  3.   

    ts.Write(rst.Fields(i).Value & "")
      

  4.   

    ts.Write(rst.Fields(i).Value & "")
      

  5.   

    我手边也没VB......While Not rst.EOF
        For i = 0 To rst.Fields.Count - 1
           ts.Write(Cstr(rst.Fields(i).Value))
           ts.Write(",")
        Next
        ts.Write(vbCrLf)
        rst.MoveNext()
    End While
      

  6.   

    While Not rst.EOF
        For i = 0 To rst.Fields.Count - 1
           ts.Write(Format(rst.Fields(i)))
           ts.Write(",")
        Next
        ts.Write(vbCrLf)
        rst.MoveNext()
    End While
      

  7.   

    另外的一種寫法:
    While Not rst.EOF
        For i = 0 To rst.Fields.Count - 1
           ts.Write(iif(isnull(rst.Fields(i).Value),"",rst.Fields(i).Value)
           ts.Write(",")
        Next
        ts.Write(vbCrLf)
        rst.MoveNext()
    End While