0

我正在尝试使用 vb.net 将 .csv 转换为 .xls,但我无法找到有效的方法。我知道如何将 .xls 转换为 .csv 是否与此类似?这是我到目前为止的代码,这是我收到的错误:

“外部表不是预期的格式。”

Public Sub ConvertCSV(ByVal lvFileName As String, ByVal lvFileNameNoExt As String)

Dim DA As New OleDb.OleDbDataAdapter

Dim DS As New DataSet

Dim objStreamWriter As StreamWriter

Dim objconn As New System.Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\GD Test\Test.csv;Extended Properties=Excel 8.0;")


    ObjConn.Open()

    Dim objcmd As New System.Data.OleDb.OleDbCommand("Select * from [AutoBatchPrintBypass.RPT$]", objconn)

    objcmd.CommandType = CommandType.Text


    objStreamWriter = New StreamWriter(gvDipDir & gvClientCode & ".XLS")


    objconn.Close()

End Sub
4

1 回答 1

0

读取 CSV 文件时,您告诉 Jet Engine 它是一个带有这部分连接字符串的 excel 文件Extended Properties=Excel 8.0。尝试将连接字符串的那部分更改为 this Extended Properties='text;HDR=Yes;FMT=Delimited(,)'。我是从这个页面得到的。

至于写文件,你可以做几件事,这里有一个类似的 SO question,

从 C# 创建 Excel(.XLS 和 .XLSX)文件

于 2012-12-06T15:44:46.100 回答