eit2_l10.pdf
(
151 KB
)
Pobierz
Microsoft Word - eit2_l10.doc
Językiprogramowania
Laboratorium10–Pliki
1
1.Zapisiodczytzmiennej
WdeklaracjiklasyTForm1stwórzzmiennąliczba1
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published: // IDE-managed Components
private: // User declarations
public: // User declarations
__fastcall TForm1(TComponent* Owner);
int liczba1;
};
//---------------------------------------------------------------------------
Umieśćnaformatcenastępującekomponenty.Nadajetykietyprzyciskom.
WzdarzeniuprzyciskuZapiszwstawnastępującykod:
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
liczba1=Edit1->Text.ToIntDef(0);
TFileStream *Plik=new TFileStream("test.dat",fmCreate);
Plik->Write(&liczba1,sizeof(int));
Plik->Free();
}
//---------------------------------------------------------------------------
WzdarzeniuprzyciskuWczytajwstawnastępującykod:
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
liczba1=0;
TFileStream *Plik=new TFileStream("test.dat",fmOpenRead);
Plik->Read(&liczba1,sizeof(int));
Plik->Free();
Label1->Caption=liczba1;
}
//---------------------------------------------------------------------------
SprawdździałanieaplikacjipamiętającabywpoluEditwpisaćliczbę
DanielKról–PWSZTarnów
Językiprogramowania
Laboratorium10–Pliki
2
2.ZapisiodczytróŜnychzmiennych
WdeklaracjiklasyTForm1stwórzzmiennąliczba2
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published: // IDE-managed Components
private: // User declarations
public: // User declarations
__fastcall TForm1(TComponent* Owner);
int liczba1;
float liczba2;
};
//---------------------------------------------------------------------------
Dodajdoformatkikolejnekomponenty
WzdarzeniuprzyciskuZapiszwstawnastępującykod:
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
liczba1=Edit1->Text.ToIntDef(0);
liczba2=Edit2->Text.ToDouble();
TFileStream *Plik=new TFileStream("test.dat",fmCreate);
Plik->Write(&liczba1,sizeof(int));
Plik->Write(&liczba2,sizeof(float));
Plik->Free();
}
//---------------------------------------------------------------------------
WzdarzeniuprzyciskuWczytajwstawnastępującykod:
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
liczba1=0;
liczba2=0;
TFileStream *Plik=new TFileStream("test.dat",fmOpenRead);
Plik->Read(&liczba1,sizeof(int));
Plik->Read(&liczba2,sizeof(float));
Plik->Free();
Label1->Caption=liczba1;
Label2->Caption=liczba2;
}
//---------------------------------------------------------------------------
SprawdździałanieaplikacjipamiętającabywpolachEditwpisaćliczby.
DanielKról–PWSZTarnów
Językiprogramowania
Laboratorium10–Pliki
3
3.Oknodialogowe
ZzakładkiDialogspobierzkomponentyOpenDialogiSaveDialog
Zaznacz komponent OpenDialog1 a następnie w Object Inspector ustaw domyślne
rozszerzenie(DefaultExt)nanp.dat
OperacjepowtórzdlakomponentuSaveDialog1.
WObject InspectorustawwłaściwośćFilter
OperacjepowtórzdlakomponentuSaveDialog1.
DanielKról–PWSZTarnów
Językiprogramowania
Laboratorium10–Pliki
4
WzdarzeniuprzyciskuZapiszwstawnastępującykod:
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
liczba1=Edit1->Text.ToIntDef(0);
liczba2=Edit2->Text.ToDouble();
if(SaveDialog1->Execute())
{
TFileStream *Plik=NULL;
try
{
Plik=new TFileStream(SaveDialog1->FileName,fmCreate);
Plik->Write(&liczba1,sizeof(int));
Plik->Write(&liczba2,sizeof(float));
}
catch(...)
{
MessageBox(0,"Nie mozna zapisac pliku","Blad",0);
}
if(Plik)
Plik->Free();
}
}
//---------------------------------------------------------------------------
WzdarzeniuprzyciskuWczytajwstawnastępującykod:
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
liczba1=0;
liczba2=0;
if(OpenDialog1->Execute())
{
TFileStream *Plik=NULL;
try
{
Plik=new TFileStream(OpenDialog1->FileName,fmOpenRead);
Plik->Read(&liczba1,sizeof(int));
Plik->Read(&liczba2,sizeof(float));
}
catch(...)
{
MessageBox(0,"Nie mozna wczytac pliku","Blad",0);
}
if(Plik)
Plik->Free();
}
Label1->Caption=liczba1;
Label2->Caption=liczba2;
}
//---------------------------------------------------------------------------
Sprawdździałanieaplikacji.
DanielKról–PWSZTarnów
Językiprogramowania
Laboratorium10–Pliki
5
4.Zadania
a)
Napiszprogramzapisującyiodczytującyzdysku50cioelementowątablicętypuint.
b)
NapiszprogramktóryzapiszenadyskupołoŜenieorazrozmiarformatkiwczasiejego
zamykania, oraz wczytujący te dane przy uruchomieniu. UŜyj zmiennych
pomocniczychtypuint.
c)
Napisz program otwierający Open pliki .TXT i wyświetlający ich zawartość w
komponencieRichEdit.ProgrampowinienmiećmoŜliwośćedycjizawartościplikui
zapisuichpodtąsamąnazwąSaveorazpodnazwądowolnąSave AsÈ
DanielKról–PWSZTarnów
Plik z chomika:
kotektiger
Inne pliki z tego folderu:
eit2_l14.pdf
(141 KB)
eit2_l13.pdf
(124 KB)
eit2_l12.pdf
(130 KB)
eit2_l11.pdf
(114 KB)
eit2_l10.pdf
(151 KB)
Inne foldery tego chomika:
Programowanie
Zgłoś jeśli
naruszono regulamin