auslesen einer textdatei und in eine neue textdatei schreiben

hallo!
also ich möchte zahlen aus eine txt auslesen un in eine andere txt datei schreiben lassen, es soll ein ganzer string ausgelsen werden aber bei mir kommt immer so eine fehler meldung!
Code:
16 C:\Programme\Dev-Cpp\zinsen.c [Warning] assignment makes pointer from integer without a cast

mein Quelllcode:

Code:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <locale.h>

int main(){
	setlocale(LC_ALL, "German");	
	char cZeichen = ' ';
	int laufzeit=0;
	int zaehler=0;
	double zinssatz	=0.0;
	double kreditsumme=0.0;
	double zinsen=0.0;
	
    FILE *fpInFile = NULL;
	if((fpInFile = fopen("D:\\kredit.txt", "r")== NULL){
    printf("Die Datei \"kredit.txt\" konnte nicht geöffnet werden !\n");
    return 1;
    }
	fscanf(fpInFile,"%d;%lf;%lf;",&laufzeit,&zinssatz,&kreditsumme);
    
    
    FILE *fpOutFile = NULL;
    if((fpOutFile = fopen("D:\\ziel.txt", "w")== NULL){
    printf("Die Datei \"ziel.txt\" konnte nicht geöffnet werden !\n");
    return 1;
    }
    fprintf(fpOutFile,"%d;%lf;%lf;",laufzeit,zinssatz,kreditsumme);
    
    while ((cZeichen = fgets(fpInFile)) != EOF) {
    putchar(cZeichen);
    
    while ((cZeichen = fgets(fpOutFile)) != EOF) {
    putchar(cZeichen);
    fclose(fpInFile);
    system("PAUSE");
}

kann mir jemand sagen was ich ändern muss damit es funktioniert?
 
Hallo,

hier und beim Öffnen der Zieldatei fehlt eine schließende Klammer (rot):
Code:
if( (fpInFile = fopen("D:\\kredit.txt", "r")) ==  NULL ) { ...
Die Anwendung von fgets() ist nicht korrekt. Wenn du nur ein einzelnes Zeichen lesen willst, musst du fgetc() verwenden.

Gruß
MCoder
 
danke!
jetzt funktionierts nur ich habe noch eine frage wie muss ich die zahlen in der txtdatei reinschreiben das er sie von einander trennt. also ich habe in meiner txtdatei stehen:
5 2,2 10000
dann zeigt er aber nur die 5 richtig an
wenn ich
5;2,2;10000 schreibe zeigt er mir das richtig an jedoch nimmt er auch die " ; "
wenn ich
5,2,2,10000 schreibe
zeigt er mir nur die 5 richtig ich will das aber so stehen haben 5 2,2 10000 in der txtdatei.

wer kann mir helfen
 
Hallo,

wie sieht das aus, wennn die Zahlen außer der "5" nicht nichtig angezeigt werden?
Diese Zeile von dir
C++:
fprintf(fpOutFile,"%d;%lf;%lf;",laufzeit,zinssatz,kreditsumme);
speichert die Werte mit Semikolon getrennt. Wenn du ein Leerzeichen haben willst, ersetzt du das Semikolon damit. Ansonsten sollte der Code doch passen?

Gruß
MCoder
 
Zurück