[ Príspevkov: 7 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Práca so súbormi

Registrovaný: 07.01.14
Prihlásený: 29.12.22
Príspevky: 41
Témy: 10 | 10
NapísalOffline : 12.11.2015 19:39 | Práca so súbormi

Pekný podvečer prajem všetkým. :) Snažím sa učiť programovať v jazyku C a prišiel som k práci so súbormi. Momentálne sa snažím nakopírovať obsah jedného textového dokumentu do druhého. Prikladám celý kód funkcie. No a problém mám taký, že nech robím čo chcem, nikdy mi obsah neprekopíruje. Nejaká pomoc prosím? :)
Kód:
void kopiruj() {
    FILE *fr, *fw;
    int c;

    fr = fopen("text1.txt", "r");
    if (!fr) {
        printf("Subor text1.txt sa nepodarilo otvorit!\n");
        return 1;
    }

    fw = fopen("text2.txt", "r");
    if (!fw) {
        fclose(fr);
        printf("Subor text2.txt sa nepodarilo otvorit!\n");
        return 2;
    }

    while ((c = fgetc(fr)) != EOF) {
        fputc(c, fw);
    }

    fclose(fw);
    fclose(fr);
    return 0;
}


Offline

Správca fóra
Správca fóra
Práca so súbormi

Registrovaný: 08.08.09
Príspevky: 12449
Témy: 39 | 39
NapísalOffline : 12.11.2015 19:52 | Práca so súbormi

[c]fw = fopen("text2.txt", "w");[/c]


_________________
always is always wrong
Offline

Užívateľ
Užívateľ
Práca so súbormi

Registrovaný: 07.01.14
Prihlásený: 29.12.22
Príspevky: 41
Témy: 10 | 10
Napísal autor témyOffline : 12.11.2015 20:02 | Práca so súbormi

Kriste pane... -_- Ďakujem. :D

Ešte to tu neuzatváraj prosím ťa. Je to trošku dlhšie cvičenie a mám pocit, že sa sem ešte jeden, dvakrát vrátim. No najskôr idem rozmýšľať. :D Len nech potom nezakladám zbytočne ďalšiu tému. :)


Offline

Užívateľ
Užívateľ
Práca so súbormi

Registrovaný: 07.04.12
Prihlásený: 02.06.21
Príspevky: 907
Témy: 54 | 54
NapísalOffline : 12.11.2015 20:19 | Práca so súbormi

Máš tú fc kopiruj deklarovanú presne hentak?, "void kopiruj() {", tu máš nastavený návratový typ void a v tele fc máš rôzne return-y 0/1/2, tzn. keď už tak deklarovať "int kopiruj(void) {".


_________________
Notebook: Dell Inspiron 15-7537= i5-4200U|nVidia GT 750M 2GB|RAM 6GB|250GB Samsung 850 EVO|W8.1|Cooler Master NotePal U3
Pc: Asus Rog Strix B360-G | i7-8700 | MSI 1080 Gaming X | Crucial Ballistix 16GB 2666MHz Dual Ranked | Samsung 970 Evo | Crucial MX500 | WD Red | Fera 3 | Arctic F12 Silent | Seasonic Focus Plus 650W Gold | Fractal Design Mini C TG
Disk: Western Digital Elements 1TB USB 2.0; Seagate Expansion 2TB USB 3.0
Príslušenstvo: A4tech Bloody V3 V-Track Core 3 + A4tech Bloody B-070; A4tech Bloody B120; A4tech Bloody G501; ATH-M40x; MSI Clutch M40
Monitor: Dell U2515H
Mobil: Xiaomi Redmi Note 3 Special Edition
Offline

Užívateľ
Užívateľ
Práca so súbormi

Registrovaný: 07.01.14
Prihlásený: 29.12.22
Príspevky: 41
Témy: 10 | 10
Napísal autor témyOffline : 13.11.2015 16:19 | Práca so súbormi

S tým problém nebol. Mal som napísané čítanie pri súbore, do ktorého som chcel zapisovať. A nad týmto, čo teraz píšeš, som tiež chvíľku premýšľal, ale fungovalo to, tak som to nejako zatiaľ neriešil. Vďaka ;)

EDIT 1

Tak potrebujem pomoc znovu. V súbore, v jednom riadku mám viac slov, oddelené medzerou. Teraz potrebujem zistiť, koľko slov sa v súbore nachádza, počet slov obsahujúci zadaný počet znakov a počet slov začínajúcich na zadaný znak. Sú prosím vás na to už nejaké definované funkcie, či?
Napadá ma, že celý obsah súboru by som načítal a zrátal by som, koľko medzier sa v ňom nachádza. Každá medzera by predstavovala jedno slovo + 1 navyše (čo by bolo posledné slovo, ak by neobsahovalo na konci medzeru).
Druhý a tretí problém si neviem zatiaľ vôbec predstaviť. :( Totiž sme dostali v škole akurát tak zadania a k práci s reťazcami sme sa bohužiaľ ešte nedostali, lebo nám dosť toho odpadlo a ja som teraz stratený. :D

EDIT 2

Okej, tak počet slov sa mi podarilo spraviť. Prikladám sem kód, keby to niekto niekedy hľadal. :)

Kód:
int pocet_slov(void) {
    FILE *fp;
    int count = 1;
    char c;
    fp = fopen("text1.txt", "r");
    if(fp == NULL)
        printf("Subor sa nepodarilo otvorit!\n");
    while((c = fgetc(fp)) != EOF) {
        if(c == ' ')
            count++;
    }
    printf("Pocet slov: = %d\n", count);
    return 0;
}


K ostatným problémom nemáte prosím nejaké návrhy? :)


Offline

Užívateľ
Užívateľ
Práca so súbormi

Registrovaný: 07.04.12
Prihlásený: 02.06.21
Príspevky: 907
Témy: 54 | 54
NapísalOffline : 14.11.2015 0:55 | Práca so súbormi

2. Odcitas si počet znakom medzi 2. medzerami
3. Zistujes 1. znak za medzerou

Všetko to robis cez funkcie, kde na začiatku vždy otvaras daný súbor, keďže predpokladam, že ich následne volas z main-u, bolo by vhodne na konci každej fc daný súbor aj zavrieť.

Neviem z čoho sa ucis, poradim ti od Herouta napísal o C-cku, môžeš ist aj sám po predu, nedrzat sa striktne školy.


_________________
Notebook: Dell Inspiron 15-7537= i5-4200U|nVidia GT 750M 2GB|RAM 6GB|250GB Samsung 850 EVO|W8.1|Cooler Master NotePal U3
Pc: Asus Rog Strix B360-G | i7-8700 | MSI 1080 Gaming X | Crucial Ballistix 16GB 2666MHz Dual Ranked | Samsung 970 Evo | Crucial MX500 | WD Red | Fera 3 | Arctic F12 Silent | Seasonic Focus Plus 650W Gold | Fractal Design Mini C TG
Disk: Western Digital Elements 1TB USB 2.0; Seagate Expansion 2TB USB 3.0
Príslušenstvo: A4tech Bloody V3 V-Track Core 3 + A4tech Bloody B-070; A4tech Bloody B120; A4tech Bloody G501; ATH-M40x; MSI Clutch M40
Monitor: Dell U2515H
Mobil: Xiaomi Redmi Note 3 Special Edition
Offline

Užívateľ
Užívateľ
Práca so súbormi

Registrovaný: 07.01.14
Prihlásený: 29.12.22
Príspevky: 41
Témy: 10 | 10
Napísal autor témyOffline : 14.11.2015 23:26 | Práca so súbormi

Okej, všetko vyriešené! Ďakujem veľmi pekne za pomoc. :)


 [ Príspevkov: 7 ] 


Práca so súbormi



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Praca so subormi

v PHP, ASP

4

533

09.02.2010 14:02

scrysurn

V tomto fóre nie sú ďalšie neprečítané témy.

Praca so subormi C

v Assembler, C, C++, Pascal, Java

3

1804

05.10.2009 23:02

juho

V tomto fóre nie sú ďalšie neprečítané témy.

Praca s textovymi subormi

v Operačné systémy Unix a Linux

2

396

19.04.2015 10:05

expoox

V tomto fóre nie sú ďalšie neprečítané témy.

Praca so subormi linux

v Assembler, C, C++, Pascal, Java

4

786

13.12.2009 14:26

chrono

V tomto fóre nie sú ďalšie neprečítané témy.

Help!!! PHP práca so súbormi

v PHP, ASP

3

939

16.12.2006 23:03

Citron-ca

V tomto fóre nie sú ďalšie neprečítané témy.

Windows Vista SP1 - stale pomala praca so subormi...

v Operačné systémy Microsoft

4

521

14.11.2008 23:28

walther

V tomto fóre nie sú ďalšie neprečítané témy.

PC zostava 2000€ práca s videom, programovanie, práca v photoshope atď...

[ Choď na stránku:Choď na stránku: 1, 2 ]

v PC zostavy

37

1910

25.01.2017 9:44

Xaltotun

V tomto fóre nie sú ďalšie neprečítané témy.

problem so subormi

v PHP, ASP

2

320

25.09.2012 17:12

korkomaster

V tomto fóre nie sú ďalšie neprečítané témy.

Array so subormi

v PHP, ASP

2

483

05.06.2009 19:57

Draex

V tomto fóre nie sú ďalšie neprečítané témy.

Problem su subormi

v Ostatné programy

4

626

08.02.2009 19:18

zeky

V tomto fóre nie sú ďalšie neprečítané témy.

PROBLEM S KRYPTOVANYMI SUBORMI

v Operačné systémy Microsoft

4

430

04.01.2008 21:27

ddumbbo

V tomto fóre nie sú ďalšie neprečítané témy.

problem zo zasifrovanymi subormi

v Operačné systémy Microsoft

2

367

12.11.2007 18:25

ts.jethro

V tomto fóre nie sú ďalšie neprečítané témy.

subory .avi so subormi .index

v Video programy

1

294

28.04.2014 13:14

Mandy

V tomto fóre nie sú ďalšie neprečítané témy.

problem so subormi na ploche

v Operačné systémy Microsoft

2

416

25.03.2009 19:18

Samoo

V tomto fóre nie sú ďalšie neprečítané témy.

stiahnut stranku z flah subormi

v Ostatné programy

4

334

14.01.2012 20:40

p4tooo

V tomto fóre nie sú ďalšie neprečítané témy.

pascal:problem s otvaranim Unit subormi

v Assembler, C, C++, Pascal, Java

6

984

28.06.2008 2:11

Roberbo



© 2005 - 2024 PCforum, edited by JanoF