Hallo liebe Forengemeinde, ich habe folgenden Kode:
Code:
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
FILE *datei = fopen("Kat_A2_5.csv", "r");
FILE *datei_neu = fopen("Kat_A2_5_MAS_ueberarbeitet.csv", "w+");
if (datei != NULL)
{
char line [128];
while (fgets(line, sizeof line, datei))
{
line[strlen(line)-1] = '\0';
if(strcmp("text1", line) == 0) continue;
else if(strcmp("text2", line) == 0) continue;
else if(strcmp("text3", line) == 0) continue;
else
{
fputs(line, datei_neu);
fputs(";", datei_neu);
fputs("2008;", datei_neu);
fputs("false;", datei_neu);
fputs("true;", datei_neu);
fputs("false;", datei_neu);
fputs("\n", datei_neu);
}
}
fclose(datei);
fclose(datei_neu);
}
else
{
// Fehlerbehandlung
}
return 0;
}
Ich benutze als Entwicklungsumgebung Bloodshed Dev-C++. Der Code lässt sich ohne Probleme compilieren. Problem: Nach Ausführen wird mir eine leere Datei angezeigt, da das Programm in folgenden else-Zweig reinläuft:
Code:
else
{
// Fehlerbehandlung
}
Woran könnte das liegen? Die Datei, aus der ich auslese liegt im selben Verzeichnis, heisst wirklich so und in der Datei sind Daten drinn - sicher. Ich verzweifel so langsam. Bin Anfänger, was die C-Programmierung angeht.
Lesezeichen