导入访问数据库时如何省略最后一个逗号?

时间:2011-11-13 19:36:04

标签: vb.net ms-access

好吧,我已成功编码了未格式化的文本数据。我使用逗号作为分隔符,如果我在这里发布它,它可以帮助像我这样的学生。

Try
    Using Reader As New TextFieldParser(Application.StartupPath & "\data.txt")
        Reader.TextFieldType = FieldType.FixedWidth
        Reader.SetFieldWidths(20, 20, 1, 2)
        Dim currentRow As String()
        While Not Reader.EndOfData
            Try
                currentRow = Reader.ReadFields()
                Dim oWrite As New System.IO.StreamWriter(Application.StartupPath & "\FormattedData.txt")
                For Each newString In currentRow
                    oWrite.Write(newString & ",")
                Next
                oWrite.WriteLine()
                oWrite.Close()
            Catch ex As Exception

            End Try
        End While
    End Using
Catch ex As Exception

End Try

现在我也有一个问题:如何在导入访问数据库时省略输出中的最后一个逗号?

2 个答案:

答案 0 :(得分:0)

执行此操作的最简单方法(我发现)是为下一遍的最后一条记录编写逗号,但不要在第一个循环中执行此操作:

Dim fFirstEntry As Boolean = True

For Each newString In currentRow
  If fFirstEntry Then
     fFirstEntry = False
  Else
    oWrite.Write(",")
  End If
  oWrite.Write(newString)
Next

答案 1 :(得分:0)

Dim sb As New StringBuilder()
For Each newString In currentRow
    sb.Append(newString).Append(",")
Next
sb.Length -= 1
oWrite.Write(sb.ToString())

请注意,StringBuilder比直接字符串操作更有效。后者在堆上生成大量垃圾,后来必须由垃圾收集器收集。

相关问题