cw 6 pliki

background image

Programowanie proceduralne

Ćwiczenie 6

Operacje na plikach

Łukasz Sztangret
Katedra Informatyki Stosowanej i Modelowania

background image

Odczyt wektora z pliku

#include<iostream>
#include<fstream>
using namespace std;

int main()
{

int n;
ifstream plik;

Przykładowa zawartość pliku
„wektor.txt”:

5 1 2 3 4 5

ifstream plik;
plik.open("wektor.txt");
plik >> n;
int *tab=new int[n];
for (int i=0; i<n; i++)

plik >> tab[i];

for (int i=0; i<n; i++)

cout << tab[i] << "\t";

cout << endl;
plik.close();
system("pause");
return 0;

}

background image

Sprawdzenie

#include<iostream>
#include<fstream>
using namespace std;

int main()
{

int n;
ifstream plik;
plik.open("dane.txt");
if (plik)

cout << "Plik zostal otwarty\n";

else

cout << "Plik nie zostal otwarty\n";

plik.close();
system("pause");
return 0;

}

background image

Zapis wektora do pliku

#include<iostream>
#include<fstream>
using namespace std;

int main()
{

int tab[5]={1, 2, 3, 4, 5};

Zawartość pliku „wektor.txt”:

5 1 2 3 4 5

int tab[5]={1, 2, 3, 4, 5};
int n=5;
ofstream plik;
plik.open("wektor.txt");
plik << n << " ";
for (int i=0; i<n; i++)

plik << tab[i] << " ";

plik.close();
return 0;

}

background image

Zadanie 1

Napisać program odczytujący z pliku liczbę
oraz macierz i zapisujący do innego pliku
macierz przemnożoną przez liczbę.

background image

Odczyt tekstu z pliku

#include<iostream>
#include<fstream>
using namespace std;

int main()
{

{

char tekst[100];
ifstream plik;
plik.open("napis.txt");
plik.read(tekst, sizeof(tekst)); // plik >> tekst;
cout << tekst << endl;
plik.close();
system("pause");
return 0;

}

background image

Odczyt z pliku

#include<iostream>
#include<fstream>
using namespace std;

int main()
{

char tekst[100];
ifstream plik;
plik.open("napis.txt");
plik.seekg(1);
plik >> tekst;
cout << tekst << endl;
plik.close();
system("pause");
return 0;

}

background image

Ilość znaków w pliku

#include<iostream>
#include<fstream>
using namespace std;

int main()
{

{

ifstream plik;
plik.open("napis.txt");
plik.seekg(0,ios::end);
cout << plik.tellg() << endl;
plik.close();
system("pause");
return 0;

}

background image

Zapis tekstu do pliku

#include<iostream>
#include<fstream>
using namespace std;

int main()

int main()
{

char tekst[]={"Jakis tekst"};
ofstream plik;
plik.open("napis.txt");
plik.write(tekst, sizeof(tekst)); // plik << tekst;
plik.close();
return 0;

}

background image

Zapis do pliku

#include<iostream>
#include<fstream>
using namespace std;

int main()
{

{

char tekst[]={"Jakis tekst"};
ofstream plik;
plik.open("napis.txt");
plik << tekst;
plik.seekp(0,ios::end);
plik << "AAA";
plik.close();
return 0;

}

background image

Zadanie 2

Napisać program odczytujący z pliku tekst i
zapisujący do innego pliku liczbę znaków,
liczbę wystąpień poszczególnych liter.

background image

Odczyt tekstu znak po znaku

#include<iostream>
#include<fstream>
using namespace std;

int main()
{

char litera;
ifstream plik;

ifstream plik;
plik.open("napis.txt");
for(;;){

plik.get(litera);
if(plik.eof())

break;

cout << litera << '-';}

cout << endl;
plik.close();
system("pause");
return 0;

}

background image

Odczyt tekstu linia po linii

#include<iostream>
#include<fstream>
using namespace std;

int main()
{

char tekst[100];
ifstream plik;

ifstream plik;
plik.open("napis.txt");
for(;;){

plik.getline(tekst, sizeof(tekst));
if (plik.eof())

break;

cout << tekst << " - koniec linii\n";}

cout << endl;
plik.close();
system("pause");
return 0;

}

background image

Odczyt tekstu

W poprzednim programie instrukcję:

plik.getline(tekst, sizeof(tekst));

zastąpić instrukcją:

plik.getline(tekst, sizeof(tekst),'.');


Wyszukiwarka

Podobne podstrony:
zagadnienia ćw, pliki zamawiane, edukacja
01 cw pliki wsadowe 4
01 cw pliki wsadowe 4id 2792
01 cw pliki wsadowe 1
cw 3, Ochrona Środowiska pliki uczelniane, Fizyka
psycho-ćw, Technik masażysta-przydatne pliki
ćw. JOGI i korzysci picia alkoholu, jeśli chcesz się uśmiechnąć, pliki tekstowe
ćw 4 Profil podłużny cieku
biofiza cw 31
Kinezyterapia ćw synergistyczne
Cw 1 ! komorki
Pedagogika ćw Dydaktyka
Cw 3 patologie wybrane aspekty
Cw 7 IMMUNOLOGIA TRANSPLANTACYJNA
Cw Ancyl strong

więcej podobnych podstron