Hi,
mit folgendem Code erzeuge ich in meinem Programm eine CSV-Datei:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28:
| private bool exportCSV(string filepath, char separator, ArrayList csv_data) { bool retVal = true;
try { FileStream outStream = new FileStream(filepath, FileMode.OpenOrCreate); StreamWriter sw = new StreamWriter(outStream, System.Text.Encoding.Default); string csv_line;
foreach (string[] product in csv_data) { csv_line = ""; foreach (string value in product) { csv_line = csv_line + value + separator; } sw.WriteLine(csv_line); } sw.Close(); } catch (Exception e) { retVal = false; }
return retVal; } |
Soweit, so gut. Die Ausgabe ist eine CSV-Datei, in welcher die einzelnen Werte durch Semikolons getrennt sind. Wenn ich diese Datei nun jedoch in Excel öffne, interpretiert er die Semikolons nicht richtig, d.h. er bringt die Spaltenreihenfolge durcheinander, vermischt die erste mit der vierten Spalte und verteilt den Text der vierten Spalte über mehrere Zeilen, obwohl keinerlei Zeilenumbrüche im Text definiert sind. Meine Vermutung ist, dass irgendetwas mit der Zeichenformatierung nicht stimmt, nur was könnte das sein? Wäre super nett, wenn Ihr mir helfen könntet.