ERLEDIGT
NEIN
NEIN
ANTWORTEN
1
1
ZUGRIFFE
1542
1542
EMPFEHLEN
-
10.07.09 23:54 #1
Grünschnabel
- Registriert seit
- Oct 2007
- Beiträge
- 1
Hi auch
Kann mir bitte jemand erklären wie fscanf in C genau funktioiert wenn ich beispielsweise folgendeTextdatei einlesen möchte:
Es soll ein Programm realisiert werden welches aus einer Eingabe-Textdatei (s.o.) eine Ausgabetextdatei erzeugt wo alle "." ersetzt werden durch ":" und dabei fscanf benutzt wird.22.12.7882
12.23.4534
23.09.1993
23.12.2000
Mein Ansatz bisher:
Genau an der fscanf-Zeile schmiert die Anwendung ohne Fehlermeldung ab.#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int copyDates(FILE *fin, FILE *fout)
{
int i=0;
char *c;
c=(char*)malloc(11*sizeof(char));
while(fscanf(fin,"%s",c) != EOF)
{
if(c[i]=='.')
{
fprintf(fout,"%c",':');
}
else
{
fprintf(fout,"%s",c);
i++;
}
}
free(c);
return i;
}
int main(void)
{
FILE *filein=NULL,*fileout=NULL;
int noDates;
char outputName[]="ausgabe.txt";
filein = fopen("eingabe.txt","r");
fileout = fopen("ausgabe.txt", "w");
noDates = copyDates(filein,fileout);
printf("Datei %s enthaelt %d Daten\n",outputName,noDates);
fclose(filein);
fclose(fileout);
system("PAUSE");
return 0;
}
Ich hoffe ihr könnt mir weiterhelfen
-
11.07.09 12:27 #2
Mitglied Diamant
- Registriert seit
- Jun 2005
- Beiträge
- 8.540
Hi.
Ich kann das von dir beschriebene Problem nicht nachvollziehen. Für die Eingabedatei die du angegeben hast läuft das Programm einwandfrei durch.
Allerdings hast du nicht geprüft ob die Dateien überhaupt geöffnet werden konnten.
Und es würde sich anbieten, wenn du schon mit fscanf arbeitest, gleich das Format der Eingabe zu nutzen und fscanf die Arbeit machen zu lassen, anstatt danach noch selber den String zu verarbeiten.
Code c:1 2 3 4 5
int v1, v2, v3; while (fscanf(fin, "%2d.%2d.%4d", &v1, &v2, &v3) == 3) { ... }
GrußIf at first you don't succeed, try again. Then quit. No use being a damn fool about it.
Ähnliche Themen
-
Problem mit fscanf
Von Lex83 im Forum C/C++Antworten: 0Letzter Beitrag: 27.05.07, 19:30 -
Fehler mit fscanf()
Von PuMi2006 im Forum C/C++Antworten: 3Letzter Beitrag: 03.09.06, 10:46 -
insertBefore (DOM) wie funktioniert es genau?
Von alloisxp im Forum Javascript & AjaxAntworten: 1Letzter Beitrag: 08.08.06, 17:02 -
wie funktioniert das SIP-Protokoll genau
Von apfelgriepsch im Forum Internet, DSL & FlatrateAntworten: 2Letzter Beitrag: 09.10.04, 23:24 -
fscanf probleme
Von Slazer im Forum C/C++Antworten: 6Letzter Beitrag: 30.08.04, 11:46




Zitieren
Login
