Zunächst einmal bin ich sehr neu mit Codierung und auf der Anfängerstufe in C#. Ich schaue mir die Fragen an, konnte aber keine passende Antwort auf meine Frage finden oder habe sie nicht verstanden..csv Datei mit Streamreader in c lesen #
Ich habe eine .csv-Datei und die Zeilen in den Dateien sind wie folgt. Ich bekomme den Längengrad mit float longitude = float.Parse(read[1]);
Aber ich möchte auch die Zahl "3" im Beispiel unten erhalten. Meiner Meinung nach kann ich den Wert mit float.Parse(read[12])
erhalten. Diese Nummer befindet sich im 12. Index in der Zeile. Aber ich kann diese Nummer nicht mit float.Parse(read[12])
erreichen. Wenn ich float.Parse(read[9])
verwende, kann ich die 3 erhalten. Dieser Code liest die fehlenden Werte zwischen Kommas nicht. Wie kann ich alle Daten mit fehlenden Werten lesen? Weil die anderen Zeilen unterschiedlich sind und sich fehlende Werte ändern. Einige der Zeilen enthalten keine Datumsinformationen, einige enthalten keine Längeninformationen.
0000000,26.0000000,38.000000,30.01.2017,0,0,0 ,,, 0,0,, 3, 0,0,0,0
string[] read;
char[] seperators = { ',' };
StreamReader sr = new StreamReader("D:/xxx.csv");
string data = sr.ReadLine();
while ((data = sr.ReadLine()) != null)
{
read = data.Split(seperators,StringSplitOptions.RemoveEmptyEntries);
float longitude = float.Parse(read[1]);
float latitude = float.Parse(read[2]);
}
_ „Dieser Code ist nicht die fehlende Werte zwischen Kommata Lese“ _ - bitte lesen [fragen] und [MCVE] und ** ** zeigt der entsprechende Code. – CodeCaster
add in wie erhalten Sie Ihre 'read []' – Jacky
StreamReader sr = new StreamReader ("Dokument Pfad"); Zeichenfolge data = sr.ReadLine(); while ((daten = sr.ReadLine())! = Null) { lesen = data.Split (seperators, StringSplitOptions.RemoveEmptyEntries); Float Longitude = float.Parse (lesen [1]); Float Breite = float.Parse (lesen [2]); } – Burak