TeddyErt Skrevet 3. desember 2004 Skrevet 3. desember 2004 jeg prøver å få ut et navn med fscanf. Filen er delt opp med : mellom hvert felt. har kommet så langt: fscanf(f,"%s:%*:%*:%d:%*", &tab, &sek) Jeg får ut nummeret korrekt, men i tabellen legges hele linjen, ikke bare det feltet jeg vil ha. Hva er feil?
søppel Skrevet 10. desember 2004 Skrevet 10. desember 2004 (endret) Hvis du vil ha en løsning i C++ kan jeg ordne det. (altså ikke i C) Endret 10. desember 2004 av søppel
saboi Skrevet 10. desember 2004 Skrevet 10. desember 2004 (endret) problemet er at %s leser til den treffer whitespace (space, tab eller newline). siden feltene er delt opp i : er det første whitespacet den treffer newline på slutten av linjen. jeg er iikke sikker på om du kan sette din egen terminating character i *scanf. hvis ikke må du lese filen på en annen måte. eller så kan du bruke c++ hvor dette er lett edit: du kan prøve %[A-Za-z] eller [^:] istedetfor %s jeg har ikke noe kompilator tilgjengelig og jeg kan ikke regex så jeg aner ikke om det funker eller ikke, men du kan lese mer om det her http://www.opengroup.org/onlinepubs/007908...xsh/fscanf.html Endret 10. desember 2004 av saboi
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå