Hallo zusammen,
eigentlich sollte das überhaupt nicht schwierig sein, nur derzeit geht irgendwie nichts in meinen Kopf.
Ich habe eine CSV Datei mit folgendem Format:
zahl; text; zahl; zahl; zahl; zahl etc.
360;kWh;123;123;123;123
370;m;12;12;12;12
Die CSV Datei enthält mehrere Zeilen, welche einfach Spalten werden sollen:
A B
360 370
kwH m
123 12
123 12
123 12
123 12
Ich lese die Datei ein, splitte sie mir zurecht und wenn ich die jetzt wegschreibe werden alle Werte aus allen Zeilen untereinander in Spalte A geschrieben. Das verstehe ich, da ich nie sage schreibe ab jetzt in eine neue Spalte. Wie mache ich das?
Ich habe auf die schnelle was hingeklatscht, also sry für komischen Code:
Kann mir da einer helfen?
Gruß
Mijay
eigentlich sollte das überhaupt nicht schwierig sein, nur derzeit geht irgendwie nichts in meinen Kopf.
Ich habe eine CSV Datei mit folgendem Format:
zahl; text; zahl; zahl; zahl; zahl etc.
360;kWh;123;123;123;123
370;m;12;12;12;12
Die CSV Datei enthält mehrere Zeilen, welche einfach Spalten werden sollen:
A B
360 370
kwH m
123 12
123 12
123 12
123 12
Ich lese die Datei ein, splitte sie mir zurecht und wenn ich die jetzt wegschreibe werden alle Werte aus allen Zeilen untereinander in Spalte A geschrieben. Das verstehe ich, da ich nie sage schreibe ab jetzt in eine neue Spalte. Wie mache ich das?
Ich habe auf die schnelle was hingeklatscht, also sry für komischen Code:
Code:
List<string> datalist = new List<string>();
StreamReader sr = new StreamReader(@"C:\test\test.csv");
datalist.Add(sr.ReadToEnd());
sr.Close();
string data = datalist[0];
string[] datasplit = data.Split('\n');
string[] split;
StreamWriter sw = new StreamWriter(@"C:\test\out.csv");
foreach (string s in datasplit)
{
split = s.Split(';');
foreach (string st in split)
{
sw.WriteLine(st);
if (st.Contains('\r'))
{
sw.Write("{0}\n", st);
// ab jetzt neue Spalte
}
else
{
sw.Write("{0}\n", st);
}
}
}
sw.Close();
Kann mir da einer helfen?
Gruß
Mijay