HI,
ich versuche mich gerade daran, mehrere CSV-Dateien über OLE einzulesen. Ich stehe aber gerade auf dem Schlauch, wo ich die Codepage mitgeben kann. Hat hier schon jemand mit gearbeitet und weiß das?
Ich hab zu Testzwecken aktuell nur ne Form mit nem Button1 und nem DatagridView1.
Folgendes ist der Quellcode. Hab mal versucht ihn einigermaßen verständlich zu kommentieren.
ich versuche mich gerade daran, mehrere CSV-Dateien über OLE einzulesen. Ich stehe aber gerade auf dem Schlauch, wo ich die Codepage mitgeben kann. Hat hier schon jemand mit gearbeitet und weiß das?
Ich hab zu Testzwecken aktuell nur ne Form mit nem Button1 und nem DatagridView1.
Folgendes ist der Quellcode. Hab mal versucht ihn einigermaßen verständlich zu kommentieren.
VB.NET-Quellcode
-
- Imports System.IO
- Imports System.Data.Common
- Imports System.Data.OleDb
- Public Class Form1
- Private _Connection As DbConnection
- Private _DataTable As DataTable
- Private _ProviderFactory As DbProviderFactory
- Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
- Dim fbd As New FolderBrowserDialog
- Dim dataPath = ""
- If Not fbd.ShowDialog = DialogResult.OK Then Return
- dataPath = fbd.SelectedPath
- 'Aufbau der Verbindung zu den Dateien im Ordner
- _ProviderFactory = OleDbFactory.Instance
- _Connection = OleDbFactory.Instance.CreateConnection
- _Connection.ConnectionString = String.Concat("Provider=Microsoft.Jet.OLEDB.4.0; Extended Properties=""text;HDR=Yes;FMT=Delimited""; Data Source='", dataPath, "';")
- _Connection.Open()
- 'Neue DataTabel erstellen für die Daten des Filters. Nach dem Laden wird nur mit den DataTables gearbeitet!
- _DataTable = New DataTable
- Using adapter = _ProviderFactory.CreateDataAdapter, command = _ProviderFactory.CreateCommand
- adapter.SelectCommand = command
- command.Connection = _Connection
- 'Zugriff auf die Daten von M_Stueli.csv
- command.CommandText = "SELECT * FROM [M_Stueli#CSV]"
- 'Füllen der Daten des Selectcommands in die Data-Table
- adapter.Fill(_DataTable)
- End Using
- 'Anzeigen aller Daten des Selectcommands im Datagrid (rein zu Testzwecken)
- DataGridView1.DataSource = _DataTable
- 'Hier sehe ich dann, dass die Codepage nicht passt.
- _Connection.Close()
- End Sub
- End Class
Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
... Nun solltest es selber wissen. :'D
Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
... Nun solltest es selber wissen. :'D