[ ne-da-ne-da @ 22.11.2006. 22:38 ] @
interesuje me koji je najbolji nacn za citanje fajl-a, i kako da tacno definisem lokaciju na kojoj se fajl nalazi
[ X Files @ 23.11.2006. 07:14 ] @
Citat:

interesuje me koji je najbolji nacn za citanje fajl-a,

Ne postoji "najbolji" način.
Postoji samo rešenje koje je adekvatno konkretnoj situaciji. Da bi ti neko dao
"konkretan" odgovor, moraš reći koji kompajler/okruženje koristiš i šta hoćeš
da postigneš.

Citat:

i kako da tacno definisem lokaciju na kojoj se fajl nalazi

Lokacija fajla je već definisana putanjom do fajla.

Moraš reći šta te konkretno zanima.
[ ne-da-ne-da @ 23.11.2006. 09:39 ] @
koristim dev c++


hocu da citam fajl koji se nalazi npr u c:\ulaz\datoteka.dat
i trebam da citam liniju po liniju (string)
[ itf @ 23.11.2006. 10:00 ] @
postoje dva načina. Možeš preko funkcije fgets, s time da moraš koristiti fopen i advekvatne C funkcije (stdio.h), ili možeš pomoću C++ tokova ifstream i fstream. Izbor je na tebi.
[ ne-da-ne-da @ 23.11.2006. 13:14 ] @
Citat:
itf: postoje dva načina. Možeš preko funkcije fgets, s time da moraš koristiti fopen i advekvatne C funkcije (stdio.h), ili možeš pomoću C++ tokova ifstream i fstream. Izbor je na tebi.


e jos samo da mi kazes sintaksu kojom bi definisao put do fajla koristeci fstream bilo bi divno
[ itf @ 23.11.2006. 13:21 ] @
Evo jedan mali primjer pa si ti dalje modificiraj...

Code:
#include <iostream.h>
#include <fstream.h>

void main() {
    char c, dat[255];
    int i = 0;

    cout<< "Unesite ime datoteke: ";
    cin>> dat;

    ifstream citaj(dat);
    while ((citaj >> c) != 0) i++;
    cout<< "Datoteka sadrzi " << i << " znakova.";
}
[ maximus_1 @ 23.11.2006. 13:23 ] @
Code:
#include <iostream>
#include <fstream>
using namespace std;

struct tslog {
    char str[100];
};

int main() {
    tslog slog;
    fstream dat;
    dat.open("Datoteka.dat", ios::binary | ios::in);

    if (!dat) {
        dat.open("Datoteka.dat", ios::binary | ios::out);
    }

    cout << "Unesite neki string: ";
    cin.getline(slog.str, 100);

    dat.write ((char*)&slog, sizeof(slog));
    dat.close();
}
[ ne-da-ne-da @ 23.11.2006. 13:33 ] @
Citat:
itf: Evo jedan mali primjer pa si ti dalje modificiraj...

Code:
#include <iostream.h>
#include <fstream.h>

void main() {
char c, dat[255];
int i = 0;

cout<< "Unesite ime datoteke: ";
cin>> dat;

ifstream citaj(dat);
while ((citaj >> c) != 0) i++;
cout<< "Datoteka sadrzi " << i << " znakova.";
}




Citat:
maximus_1
Code:
#include <iostream>
#include <fstream>
using namespace std;

struct tslog {
    char str[100];
};

int main() {
    tslog slog;
    fstream dat;
    dat.open("Datoteka.dat", ios::binary | ios::in);

    if (!dat) {
        dat.open("Datoteka.dat", ios::binary | ios::out);
    }

    cout << "Unesite neki string: ";
    cin.getline(slog.str, 100);

    dat.write ((char*)&slog, sizeof(slog));
    dat.close();
}


sve je to divno i krasno al ja jos uvijek ne znam kako da odredim putanju do fajla koji se nalazi na disku
[ itf @ 23.11.2006. 13:35 ] @
Citat:
ne-da-ne-da: sve je to divno i krasno al ja jos uvijek ne znam kako da odredim putanju do fajla koji se nalazi na disku

Code:
cout<< "Unesite ime datoteke: ";
cin>> dat;


To unosiš ovdje. Znači, možeš unijeti npr. TEKST.TXT ili npr. C:\\nekitekst.txt