Problem z zapisaniem do pliku [C]

LoGaN9916
Użytkownik
Użytkownik
Posty: 164
Rejestracja: 26 lis 2006, o 20:15
Płeć: Mężczyzna
Lokalizacja: Zona
Podziękował: 3 razy
Pomógł: 3 razy

Problem z zapisaniem do pliku [C]

Post autor: LoGaN9916 »

Witam!
Mam problem ze swoim programem bo chciałbym żeby mój program z pliku nip.txt odczytywał i zapisywał wybrane numery nip do pliku miasto.txt ale na razie to program tworzy tylko plik miasto.txt na dysku i dodaje wpisuje pierwszy element z pliku nip. Proszę o sprawdzenie i poradę
Kod:

Kod: Zaznacz cały

#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>


int main()
{
        FILE*plik;
FILE*plik1;
        char txt[15];
        int x1,x2,x3,x4,x5,x6,x7,x8,x9,x10;
        int suma,spr;
        plik=fopen("nip.txt","r");
        plik1=fopen("miasto.txt","w");
      
                if(plik==NULL)
                {

                        printf("Błąd otwiercia pliku nip.txt
");
                        return -1;


                }



                if(plik1==NULL)
                {

                        printf("Błąd otwiercia pliku miasto.txt
");
                        return -1;
                }
              
                fscanf(plik,"%s",txt);
                while(feof(plik)==0)
                {
                      
              

                x1=txt[0]-48;
                x2=txt[1]-48;
                x3=txt[2]-48;
                x4=txt[3]-48;
                x5=txt[4]-48;
                x6=txt[5]-48;
                x7=txt[6]-48;
                x8=txt[7]-48;
                x9=txt[8]-48;
                x10=txt[9]-48;
              
        
fprintf(plik1,"%s",txt);
        
              
           fclose(plik1);
             }
         return 0;
}
Linxaddict
Użytkownik
Użytkownik
Posty: 5
Rejestracja: 18 paź 2010, o 16:08
Płeć: Mężczyzna
Lokalizacja: Wrocław

Problem z zapisaniem do pliku [C]

Post autor: Linxaddict »

Odczytuje tylko pierwszą linijkę, ponieważ instrukcja fscanf jest poza pętlą. Po dodaniu jej na sam początek pętli wszystko powinno działać.
Piotr20
Użytkownik
Użytkownik
Posty: 9
Rejestracja: 16 paź 2010, o 12:54
Płeć: Mężczyzna
Lokalizacja: Częstochowa

Problem z zapisaniem do pliku [C]

Post autor: Piotr20 »

Tak samo funkcję :
fclose(plik1);
wyrzuciłbym poza pętelkę bo tak to do pliku zapisze Ci się tylko jeden element, następnie strumień zostanie zamknięty.

Druga rzecz to zamiast:
while(feof(plik)==0)
powinno być:
while(!(feof(plik)))

Pozdrawiam
ODPOWIEDZ