Professional Documents
Culture Documents
Datoteki
Datoteki
11. ДАТОТЕКИ
Датотеки се множества податоци зачувани на некоја надворешна меморија
под едно заедничко име. Тие можат да содржат различни податоци: броеви, текст,
слики, звук итн.
Датотеките може да бидат:
•
•
•
1
Основи на програмирање (ОП - 02)
2
Основи на програмирање (ОП - 02)
Влезни датотеки
Типот на променливите за влезните датотеки е ifstream.
Декларација на променлива за влезна датотека:
ifstream име_на _променлива;
Пример:
ifstream datvlezna;
ifstream vlezna, indat;
За да може да се читаат податоци од една влезна (физичка) датотека, мора да ì се
придружи променлива од тип ifstream:
име_на_променлива.open(име_на_датотека);
каде што
име_на_променлива – име на променливата за влезна датотека,
име_на_датотека – име на физичката датотека и
open – функција за отворање на датотека од библиотеката <fstream>.
Пример:
•
•
•
3
Основи на програмирање (ОП - 02)
datvlezna.open(“podatoci”);
Поврзување на променливата за влезна датотека со физичката датотека може да се
направи и при нејзиното декларирање:
ifstream datvlezna(“podatoci”);
Проверка дали постои датотека за читање со такво име:
if (!datvlezna)
{
cout<<”Datoteka so takvo ime NE postoi! \n”;
return 1
}
Излезни датотеки
4
Основи на програмирање (ОП - 02)
datizlez.open(“rezultati”);
5
Основи на програмирање (ОП - 02)
izlezna.open(“izlezna_datoteka”);
outdat.open(pomosna_datoteka)
Поврзување на променливата за излезна датотека со физичката датотека може да
се направи и при нејзиното декларирање:
оfstream datizlezna(“rezultati”);
Проверка дали постои некоја датотека со име што сакаме да го доделиме:
if (datizlezna)
{
cout<<”Datotekata so takvo ime veke postoi! \n”;
return 1
}
Влезно−излезни датотеки
6
Основи на програмирање (ОП - 02)
параметар
ios::in
ios::out
ios::app
ios::ate
ios::nocreate
ios::noreplace
ios::notrunc
ios::binary
Пример:
1. Отворање влезна датотека за читање: dat1.open(“prva”, ios::in);
2. Отворање излезна датотека:
dat1.open(“prva”, ios_base::out);
3. Отворање датотека за допишување податоци во неа:
dat1.open(“prva”, ios_base::app);
ifstream dat;
int a;
char tekst[20];
dat.open(vlezna);
dat>>a>>tekst;
Запишување во датотека:
ifstream dat;
int a;
char tekst[20];
dat.open(vlezna);
dat<<a<<tekst;
Затворање на датотека
Датотека се затвора со функцијата close().
Пример:
9
Основи на програмирање (ОП - 02)
dat.close();
За да се користи веќе затворена датотека таа треба повторно да се отвори.
if (!datizlez)
{
cout<<”Datoteka so takvo ime Ne postoi. \n ”; return 1;
}
datizlez<<”Zdravo! \n”;
datizlez.close();
ifstream datvlez(“test”);
if (!datvlez)
{
cout<<”Datoteka so takvo ime Ne postoi. \n ”; return 1;
}
char str[10];
datvlez>>str;
cout<<str<<endl;
datvlez.close();
return 0;
}
{
fstream dat(“test”, ios::out);
if (!dat) {
cout<<”Datoteka so takvo ime Ne postoi. \n ”; return 1;
}
dat<<”Zdravo! \n”;
dat.close();
dat.open(“test”, ios::in);
if (!dat) {
cout<<”Datoteka so takvo ime Ne postoi. \n ”; return 1;
}
char str[10];
dat>>str;
cout<<str<<endl;
datvlez.close();
return 0;
}
12