【问题标题】:How to export to a .csv file如何导出到 .csv 文件
【发布时间】:2012-08-27 00:44:18
【问题描述】:

我有一个基本的 VB.net 程序,它对数据库运行查询以提取客户信息以发送优惠券。我想做的是,当我按下命令按钮以返回结果并在运行该程序的计算机上创建一个 .csv 文件时......现在,我有一个运行查询的程序,并转储结果到报告查看器,但是我无法导出到 .csv,而且报告查看器上显示的记录太多...

到目前为止,这是我的代码...我假设我需要以 XML 形式构建布局?

    Dim str As New StringBuilder

            For Each dr As DataRow In Me.DataDeliveryServiceDataSet.Invoice_Tb

                For Each field As Object In dr.ItemArray

                    str.Append(field.ToString & ",")

                Next

                str.Replace(",", vbNewLine, str.Length - 1, 1)

            Next



            Try

                My.Computer.FileSystem.WriteAllText("C:\temp\testcsv.csv", str.ToString, False)

            Catch ex As Exception

                MessageBox.Show("Write Error")
End Try
End Sub

【问题讨论】:

  • 我是个白痴。我没有创建“Temp”文件夹...此代码工作正常...知道如何将标题插入 CSV 吗?

标签: xml vb.net dataset export-to-csv


【解决方案1】:

您可以使用 LinQ 将内部循环替换为这个简短版本

Dim str As New StringBuilder 
For Each dr As DataRow In Me.DataDeliveryServiceDataSet.Invoice_Tb 
    str.AppendLine(string.Join(",", _ 
             dr.ItemArray.Select(Function(o) if(o = DBNull.Value,"",o.ToString()))))
Next 

当然,如果需要导出为XML格式,使用数据表的WriteXml方法就足够了

Me.DataDeliveryServiceDataSet.Invoice_Tb.WriteXml("C:\temp\testcsv.csv")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-03
    • 1970-01-01
    • 2014-01-09
    • 2021-06-28
    • 2013-01-30
    • 1970-01-01
    • 1970-01-01
    • 2018-08-02
    相关资源
    最近更新 更多