點擊button 獲取datagridview中的資料匯出檔案格式為csv,但是匯出后與sql直接匯出的csv檔案不一樣 該如何解決?
陳述句為
Private Sub 資料匯出_Click(dgv As Object, e As EventArgs) Handles 資料匯出.Click
Dim sfd As New SaveFileDialog
sfd.Filter = "csv files檔案(*.csv)|*.csv"
'sfd.Filter = "Excel檔案(*.xls)|*.xls|所有檔案(*.*)|*.*"
moban = "模板"
sfd.FileName = RadioButton1.Text & moban
sfd.FilterIndex = 0
sfd.Title = "保存為 CSV(逗號分隔)檔案"
sfd.InitialDirectory = "F:\流感上傳\"
sfd.RestoreDirectory = True
sfd.CreatePrompt = True
If sfd.ShowDialog = DialogResult.OK Then
Dim fs As New IO.FileStream(sfd.FileName, IO.FileMode.Create)
Dim sw As New IO.StreamWriter(fs, System.Text.Encoding.Unicode)
Dim title As String = ""
Dim i As Integer
'寫列標題
For i = 0 To DataGridView3.ColumnCount - 1
title = DataGridView3.Columns(i).HeaderText
sw.Write(Chr(34))
sw.Write(title)
sw.Write(Chr(34))
sw.Write(",")
If i <> DataGridView3.ColumnCount - 1 Then
End If
Next
sw.WriteLine("")
Dim x As Integer
Dim y As Integer
For x = 0 To DataGridView3.RowCount - 1
For y = 0 To DataGridView3.ColumnCount - 1
If DataGridView3.Rows(x).Cells(y).Value Is DBNull.Value Then
sw.Write("")
Else
sw.Write(Chr(34))
sw.Write(DataGridView3.Rows(x).Cells(y).Value)
sw.Write(Chr(34))
sw.Write(",")
End If
If y <> DataGridView3.ColumnCount - 1 Then
End If
Next
'DataGridView3.Columns(lm).HeaderText = ""
sw.WriteLine("")
sw.Flush()
'If DataGridView3.Columns(lm).Name = lm Then
'DataGridView3.Columns(lm).Visible = False
Next
fs.Close()
MessageBox.Show("匯出成功", "提示")
End If
End Sub
資料庫直接匯出的csv檔案

除錯工具匯出后的csv檔案

和直接匯出相比少了“”與, 時間格式也不對求大神指導
uj5u.com熱心網友回復:
除錯下,Chr(34)就是引號uj5u.com熱心網友回復:
沒用試過了 就是和直接匯出的文格式有問題uj5u.com熱心網友回復:
我看了下你的代碼,感覺沒有問題,我將你的代碼復制到我的專案中,注釋掉了 moban = "模板"sfd.FileName = RadioButton1.Text & moban,這兩句代碼,匯出是正常的。
uj5u.com熱心網友回復:
"Org","Line","DJ","Model","Station","MaterialNo","CLID","Result","CreatedOn","CreatedBy","439","LDCP1212","P3067012","700-015128-0000","Wave Soldering","700-014828-0100","2155030164NS98200961","Alert","12/18/2019 11:33:57 AM","zhangpeng",
"439","LDCP1212","P3067267","700-015128-0000","Wave Soldering","641-001064-0000","LD000000000020668795","Pass","12/18/2019 11:36:33 AM","zhangpeng",
"439","LDCP1201","P3067012","700-015128-0000","Potting","641-001064-0000","LD000000000020742826","Alert","12/18/2019 1:34:13 PM","zhangpeng",
這是我匯出的部分資料,這資料是我以前隨意弄得測驗資料
uj5u.com熱心網友回復:
多暫停,或者用debug.print(s) 除錯吧。uj5u.com熱心網友回復:
我往年做了一個Excel匯入匯出類,也是在處理 csv 的時候有些小問題,后來干脆當成xls來處理。參見
《如何在 Visual Basic .NET 中使用 ADO.NET 檢索和修改 Excel 作業簿中的記錄》, https://blog.csdn.net/cdbqss1/article/details/5623515?utm_source=app
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/62006.html
標籤:VB.NET
上一篇:求解決
下一篇:C#新手請教一個問題報錯
