Nezobrazi obsah celych suborov.

Programovacie jazyky, rady, poradňa...
maetoo
Light Star
Light Star
Príspevky: 263
Registrovaný: 24 okt 2009, 20:05
Bydlisko: Trenčín

Nezobrazi obsah celych suborov.

Príspevok od používateľa maetoo »

Zdravim.
Mám zdrojovy kod. Pracujem so subormi.
Program sa mi preloži ale nezobrazi mi komplet celý obsah suboru.
Ako prerobiť kod, aby prečital celý obsah suborov?

kod

Kód: Vybrať všetko

#define DLZKA 40 //Zadefinovany nazov pola a velkost



void email_menu() {

    int switchEmail; //Nazov a typ premennej pre switch

    for(;;) { //Nekonecny cyklus pre menu

        printf("\n" //Oznamy uzivatelovi v ktorom menu sa nachadza
               "Menu:Emailove adresy\n"
               "\n"
               "\n"
              ); //Print

        printf("1.Zobrazit\n" //Zobrazi na monitor ako sa pracuje s programom
               "2.Pridat\n"
               "3.Spat\n"
               "0.Koniec\n"
              ); //Print

        printf("\n" //Vyzve uzivatela aby zvolil moznost
               "Zvolte moznost\n"
              );
        scanf("%d", &switchEmail); //Sleduje ktora moznost resp. cislo bolo zvolene

        switch(switchEmail) { //Menu-ovladanie

        case 1: //Moznost 1
            CleanConsole //Vycisti konzolu
            email_zobrazit(); //Prepne na .c subor - zobrazi emailovu databazu
            break;

        case 2: //Moznost 2
            CleanConsole //Vycisti konzolu
            email_pridat(); //Prepne na .c subor - pridat email do databazy
            break;

        case 3: //Moznost 3
            CleanConsole //Vycisti konzolu
            head_menu(); //Prepne na .c subor - hlavne menu
            break;

        case 0: //Moznost 0
             exit(0); //Ukonci program

        default:
            CleanConsole //Vycisti konzolu
            printf("Nezadali ste spravnu moznost.\n" //Upozorni ze bola zvolena nespravna moznost.
                   "Volbu opakujte" //Vyzve pouzicatela aby volbu cisla opakoval
                  ); //Pront
            break;

                            } //Switch

            } //For

} //Void menu

void email_pridat() {

    FILE *emailTXTa;

    char www[DLZKA];
    char meno[DLZKA];
    char heslo[DLZKA];

    printf("Zadajte WWW stranku\n"); //Vyyve uzicatela na zadanie URL linky
    scanf("%40s", www); //URL Linku ulozi do premennej www

    printf("Zadajte meno\n"); //Vyyve uzicatela na zadanie prihlasovacieho mena
    scanf("%40s", meno); //Prihlasovacie meno ulozi do premennej meno

    printf("Zadajte heslo\n"); //Vyyve uzicatela na zadanie prihlasovacieho hesla
    scanf("%40s", heslo); //Prihlasovacie heslo ulozi do premennej heslo

    if((emailTXTa=fopen("email_www.txt", "a"))==NULL) {

        printf("Subor sa nepodarilo otvorit\n");
        return 1;
    }

    fprintf(emailTXTa, "%s", www);
    fclose(emailTXTa);

    if((emailTXTa=fopen("email_meno.txt", "a"))==NULL) {

        printf("Subor sa nepodarilo otvorit\n");
        return 1;
    }

    fprintf(emailTXTa, "%s", meno);
    fclose(emailTXTa);

    if((emailTXTa=fopen("email_heslo.txt", "a"))==NULL) {

        printf("Subor sa nepodarilo otvorit\n");
        return 1;
    }

    fprintf(emailTXTa, "%s", heslo);
    fclose(emailTXTa);

}

void email_zobrazit() {

     FILE *emailTXTr;

    char www[DLZKA];
    char meno[DLZKA];
    char heslo[DLZKA];

    printf("Adresa"
           "\t\t"
           "Prih.meno"
           "\t"
           "Prih.heslo"
           "\n"
           );

    emailTXTr=fopen("email_www.txt", "r");

    fscanf(emailTXTr, "%40s", &www);
    printf("%s\t", www);
    fclose(emailTXTr);

    emailTXTr=fopen("email_meno.txt", "r");

    fscanf(emailTXTr, "%40s", &meno);
    printf("%s\t", meno);
    fclose(emailTXTr);

    emailTXTr=fopen("email_heslo.txt", "r");

    fscanf(emailTXTr, "%40s", &heslo);
    printf("%s\t", heslo);
    fclose(emailTXTr);
}
Obsah suboru: email_www.txt

Kód: Vybrať všetko

www.gmail.com - zobrazi 
www.centrum.sk - nezobrazi
www.inmail.sk  - nezobrazi
www.zoznam.sk  - nezobrazi
dasdsadasd - nezobrazi
Obsah suboru: email_meno.txt

Kód: Vybrať všetko

student.3z2f12  - zobrazi 
centrum111  - nezobrazi
zsvelkahradna  - nezobrazi
zoznamvh111  - nezobrazi
dadsad  - nezobrazi
Obsah suboru: email_heslo.txt

Kód: Vybrať všetko

123456789 - zobrazi 
147414444  - nezobrazi
145478gg  - nezobrazi
velhrad111  - nezobrazi
dsadsa  - nezobrazi
Prílohy
prelozeny kod.png
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8216
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Nezobrazi obsah celych suborov.

Príspevok od používateľa harrison314 »

Skus takto

Kód: Vybrať všetko

  fscanf(emailTXTr, "%40s", www);

  fscanf(emailTXTr, "%40s", meno);

  fscanf(emailTXTr, "%40s", heslo);
//autoeditácia príspevku (03 Dec 2015, 16:57)
PS:
fscanf s %s ti nacita "slovo", teda suvisli text
ak chces nacitavat riadky tak cez fgets
Napísať odpoveď