Hallo zusammen,
ich habe ein Problem beim einlesen von CSV Dateien über OleDb.
Folgende Konfiguration verwende ich:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
| StringBuilder sbConnectionString = new StringBuilder(512); sbConnectionString.Append("Provider= Microsoft.Jet.OLEDB.4.0;"); sbConnectionString.Append("Data Source=").Append(Path.GetDirectoryName(sFilename)).Append(";"); sbConnectionString.Append("Extended Properties=\"Text;"); sbConnectionString.Append("HDR=Yes;"); sbConnectionString.Append("FMT=Delimited\";");
string SqlStatement = "Select * from " + Path.GetFileName(sFilename);
OleDbDataAdapter adptSelect = new OleDbDataAdapter(SqlStatement, sbConnectionString.ToString());
adptSelect.Fill(dataset); |
Kommen jedoch Anführunfszeichen in der Datei vor sieht das ungefähr so aus:
field 1;field 2;field 3;field 4;field 5
field 1;field "2";field 3;field 4;field 5
field 1;field 2;field 3;field 4;field 5
+-------+-------+-------+-------+-------+
| field 1| field 2| field 3| field 4| field 5|
+-------+-------+-------+-------+-------+
| field 1| field
+-------+-------+-------+-------+-------+
| field 1| field2 | field 3| field 4| field 5|
+-------+-------+-------+-------+-------+
Ab der Zelle wo er dieses findet, beendet er diese einfach.
Gibt es eine Möglichkeit Anführungszeichen ganz normal mit einzulesen?
Moderiert von Th69: Code- durch C#-Tags ersetzt