Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 3 odgovora
  • 1.821 pregleda

Najnovija ↓

Pozicioniranje u txt fajlu 22.05.2009. u 14:15 · pre 212 meseci #1
Trebala bi mi mala pomoc.Naime imam problema u vezi pozicioniranja u txt fajlu.Zeleo bih da ovakav ispis u fajlu:

Code:

----------------------
IME               PREZIME
Marko             Markovic
Petar             Petrovic
...


E sad imam problem kad upisem ime u datoteku, moram se pozicionirati od pocetka reda npr. na 15 mesto.Ja sam uradio to na ovaj nacin:

Code:

...
           cout << "Unesite ime: ";
    cin >> ime;

    cout << "Unesite prezime: ";
    cin >> prezime;

    fstream dat;

    dat.open("datoteka.txt",ios.app);

    dat << "\n" << ime;
    
    velicina = ime.size();
    
    pomeraj = 15 - velicina;

    for(int i=0;i<pomeraj;i++)
    {
        dat << " ";        
    }
    
    dat << prezime;
  
           dat.close()
...


Ali to mi je malo seljacki i ne moze se koristiti uvek.Guglao sam i nasao funkcije seekg, seekp, tellg, tellp .Ali ne mogu da skontam kako one rade...Pa ako neko moze da napise na koji nacin da ih iskoristim, ili neku drugu ideju za resenje ovog problema.
Re: Pozicioniranje u txt fajlu 22.05.2009. u 14:32 · pre 212 meseci #2
Za formatirani izlaz koristi funkcije printf ili sprintf.

Na primer:

Code:

char OutputBuffer[255];
sprintf(OutputBuffer, "%15s%s\n", ime, prezime);
dat << OutputBuffer;
Re: Pozicioniranje u txt fajlu 22.05.2009. u 14:37 · pre 212 meseci #3
#include <iomanip.h>
...

dat << setiosflags(ios::left) << setw(15) << ime << prezime << endl;

Dve set funkcije se odnose samo na prvo sledeće polje tj. ime.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme