Probleme bei Einlesen von .csv dateien
-
Hallo zusammen,
hoffe hier auf ein wenig hilfe bei meinem Problem:
Hab dazu schoneiniges an Tutorials und auch an Hilfen hier im Forum gelsen, komme aber trotzdem nicht auf den rihctigen Weg.Muss für ein kleines Auslegungsprogramm Daten aus eine .csv File, welches vorher mit Excel erstellt worden ist auslesen.
Zu Testzwecken hab ich von Galileo Computing aus dem Tutorial die .csv Datei übernommen (siehe kapitel 18.9)
wenn ich das ganze mit meinem Code einlese, bekomme ich scheinbar alles richtig ausgegeben:
Datei:20:23,12.11.2001,20:50,12.11.2001,Pinguin
12:13,13.11.2001,15:29,13.11.2001,root
16:33,13.11.2001,20:23,13.11.2001,Mr.X
23:11,13.11.2001,01:12,14.11.2001,root
10:22,14.11.2001,12:14,14.11.2001,Spock
16:33,14.11.2001,20:21,14.11.2001,ScottyCode:
while((fscanf(CSV,"%d:%d,%d.%d.%d,%d:%d,%d.%d.%d,%s\n", &login_hour,&login_min,&date_day,&date_mon,&date_year,&logout_hour,&logout_min,&date_dayx,&date_monx, &date_yearx,name)) != EOF )
{
cout << login_hour << ":" << login_min << name << endl;
};
Ausgabe:20:23Pinguin
12:13root...
16:33Scotty
Im nächste Schritt habe ich mir eine eigene Datei mit Excel erzeugt, die mit dem Editor geöffnet folgendermassen aussieht:
250;500;RM500
800;750;RM800mit diesem Code wollte ich das ganze dann einlesen:
TEST = fopen("C:\\Dokumente und Einstellungen\\praktikant\\Desktop\\TEST4.csv", "r");
if(NULL == TEST)
{
printf("Konnte Datei nicht \x94 \bffnen!\n");
}
U_P = -1;
U_n = -1;
while((fscanf(TEST,"%d;%d;%s\n", &U_P,&U_n,Name_Motor)) != EOF )
{
cout << U_P << " " << U_n << " " << Name_Motor << endl;
};das Programm gibt mir dann aus:
250 600 RM
500 600 RMDie Variabeln sind identisch definiert. Die Syntax ist meines erachtens 1 zu 1 übertragen.
Nur verstehe ich im Moment nicht was er da anderes macht :-(.
Die 600 kommt im Programm überhaupt nicht vor....
habe die variablen vorher extra mit werten gefüllt, die werde überschrieben ...Nur wo zaubert er zB die 600 als Wert her?
-
Macht es einen Unterschied wenn die Trennzeichen einmal Kommas und einmal Semikolons sind?
-
Ein Thread zum Thema reicht aus, deshalb geht es hier weiter.