Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problem sa iscitavanjem iz streama sa fscanf

[es] :: C/C++ programiranje :: Problem sa iscitavanjem iz streama sa fscanf

[ Pregleda: 2485 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

OTAC_XXL
Benjamin

Član broj: 98749
Poruke: 36
*.PPPoE-2900.sa.bih.net.ba.



Profil

icon Problem sa iscitavanjem iz streama sa fscanf11.04.2007. u 07:58 - pre 207 meseci
Pozdrav,

Problem koji imam jeste da nemogu da iscitam vrijednost iz fajla sa fscanf funkcijom. Vrijednost koju treba da iscitam je jedan broj i treba da ga smjestim u varijablu radi kasnijeg poredjenja.

Ovo je dio koda:

Code:

        FILE *id_file;
        char filename_temp[]="increment_id";
        char filename[60];
        int id_value=0;
        int i=0;
        
        sprintf(filename, "%s%s", DIR_PATH, filename_temp);
        printf("\n PatientID file name is %s",filename);


        if((id_file=fopen(filename,"w+"))==NULL)
                printf("\nUnable to open id file\n");

        i=fscanf(id_file,"%d",&id_value);
        

        printf("\n Vrijednost i=%d",i);
        printf("\n\n Value of id_value is %d\n\n",id_value);

Problem je u tome sto mi fscanf uvijek vrati da je i= -1 sto znaci da nije procitao vrijednost iz fajla, tako da id_value uvijek ostane 0 posto je tako na pocetku deklarisano.

Svi prijedlozi su dobro dosli :-)

EDIT: X Files : Molim Vas da zbog preglednosti, kod upisujete između tag-ova predviđenih za to:

[code]
int main ( int argc, char *argv[] )
{
// ...
return 0;
}
[/code]

Tako uokviren (formatizovan) kod će se videti ovako:

Code:

int main ( int argc, char *argv[] )
{
   // ...
   return 0;
}



[Ovu poruku je menjao X Files dana 11.04.2007. u 14:10 GMT+1]
Sve mozes nahraniti ali oci nikad :-)
 
Odgovor na temu

OTAC_XXL
Benjamin

Član broj: 98749
Poruke: 36
*.PPPoE-2900.sa.bih.net.ba.



Profil

icon Re: Problem sa iscitavanjem iz streama sa fscanf11.04.2007. u 08:25 - pre 207 meseci
Mozda sam prvo trebao reci sta hocu da postignem sa ovim :-)

Ideja je da periodicno ucitam file provjerim koja je vrijednost u njemu upisana, smjestim je u id_value, inkrementiram i ponovo je upisem u file. Mozda neko ima neki bolji nacin da se to uradi?
Sve mozes nahraniti ali oci nikad :-)
 
Odgovor na temu

SuPeR_MaSteR
Marko Stamenković

Član broj: 88590
Poruke: 115
*.inffo.net.



Profil

icon Re: Problem sa iscitavanjem iz streama sa fscanf11.04.2007. u 14:00 - pre 207 meseci
Code:
i = fscanf(id_file,"%d",&id_value);

Kada izvrsis ovakvu dodelu, u varijabli ce se nalaziti broj ucitanih karaktera (a ne vrednost). Ne kapiram i dalje sta tacno treba da uradis.. :)
 
Odgovor na temu

komar023
Zrenjanin

Član broj: 125417
Poruke: 6
*.zrlocal.net.



Profil

icon Re: Problem sa iscitavanjem iz streama sa fscanf20.04.2007. u 09:35 - pre 206 meseci
Code:

/* Otvaras datoteku za upisivanje(i citanje)
    pri cemu se njen sadrzaj ako ona vec postoji trajno brise.
    U slucaju da ne ostoji datoteka sa tim imenom napravice se nova datoteka*/
if((id_file=fopen(filename,"w+"))==NULL)
                printf("\nUnable to open id file\n");


/*Citas sadrzaj prazne datoteke*/
i=fscanf(id_file,"%d",&id_value);


/*Ukoliko zelis da iscitas sadrzaj datoteke bez njenig unistavanja 
   i zelis da imas mogucnost da pises u nju onda koristi */

if((id_file=fopen(filename,"r+"))==NULL)
                printf("\nUnable to open id file\n");
 
Odgovor na temu

rj444
Radomir Jakovljevic
Beograd

Član broj: 48212
Poruke: 354
147.91.1.*



Profil

icon Re: Problem sa iscitavanjem iz streama sa fscanf26.05.2007. u 12:44 - pre 205 meseci
Citat:
komar023:
...


Tj. otvori fajl u "r+" modu da se ne bi obrisao sadrzaj datoteke ukoliko ona postoji. Zbog + moci ces i da pises u nju.
Code:
...fopen(filename,"r+")...


P.S. Verovatno si vec resio problem i sam, ali ovu poruku dodajem radi dugih kojima treba.
 
Odgovor na temu

[es] :: C/C++ programiranje :: Problem sa iscitavanjem iz streama sa fscanf

[ Pregleda: 2485 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.