IZBORNIK HOME FORUM ACCESS EXCEL WORD KAZALO
   
  Kazalo Visual basic
1 Visual Basic 6.0 UVOD
2 Varijable i konstante
3 Prihvat i ispis podataka
4 Nizovi podataka
5 Upis i čitanje iz datoteke
6 Slučajni brojevi
7 Logička provjera
8 Pretvaranje i izdvajanje podataka
9 Programske petlje
10 Potprogrami i funkcije
11 Grafika u VB
12 Multimedija u VB
13 Razni primjeri
   
.17
.
AutoCad tutoriali

-

.
.

Adsense sponzor



VB - Visual Basic za početnike i neznalice - VBA for dummies

VB - VISUAL BASIC 6.0
UPIS I ČITANJE IZ DATOTEKE

Search This Web Site

Adsense sponzor






OBJAŠNJENJE


Pomoću naredbe OPEN možemo formirati datoteku i u nju upisivati ili iz nje čitati upisane podatke. Na taj način možemo spremiti podatke kao što su popisi, tekstovi ili drugi odgovori korisnika te ih kasnije učitati iz datoteke u cilju prikaza izvješća ili dodatne obrade.

Važno je napomenuti da svaku otvorenu datoteku na kraju rada treba zatvoriti naredbom CLOSE kao i to da se svaka datoteka otvara pod jedinstvenim brojem (#1, #2, #3...) koji se definira u naredbi OPEN i zatim koristi u naredbama WRITE i CLOSE.

  

STVARANJE NOVE DATOTEKE I UPIS


Ako želimo stvoriti novu (praznu) datoteku i upisati podatke u nju, onda datoteku otvaramo za izlaz/upis (FOR OUTPUT), kao u primjeru:

PROGRAMSKI KOD

OBJAŠNJENJE

Dim ime As String
Dim ocj As Integer
OPEN "
spisak.txt" FOR OUTPUT AS #1
DO
     ime = InputBox("
Upiši ime učenika:")
     IF ime$ = "
kraj" THEN EXIT DO
     ocj = Val(InputBox("
Upiši ocjenu:"))
     WRITE #1, ime, ocj
LOOP
CLOSE #1

'definiranje varijable za prihvat imena
'definiranje varijable za prihvat ocjene
'otvara datoteku za upis pod brojem #1
'početak petlje
'prihvat imena u varijablu ime
'ako je pod ime upisana riječ "
kraj" prekini petlju
'prihvat ocjene u var. ocj (Val je pretvara u broj)
'upiši u datoteku upisano ime i ocjenu
'idi na početak petlje
'zatvori datoteku pod brojem #1

Gornji primjer otvara datoteku za upis i zatim vrti DO...LOOP petlju unutar koje od korisnika prihvaća jedno po jedno ime i ocjenu (InputBox) i upisuje to u datoteku (WRITE) sve dok korisnik umjesto imena ne upiše riječ "kraj". Kada korisnik umjesto imena upiše riječ "kraj", petlja se prekida i datoteka se zatvara.

   

DODAVANJE U POSTOJEĆU DATOTEKU


Ako podatke želimo dopisati u već postojeću datoteku, onda datoteku otvaramo za dodavanje (FOR APPEND), kao u primjeru (ako datoteka ne postoji, APPEND će formirati novu datoteku!):

PROGRAMSKI KOD

OBJAŠNJENJE

Dim ime As String
Dim ocj As Integer
OPEN "
spisak.txt" FOR APPEND AS #1
DO
     ime = InputBox("
Upiši ime učenika:")
     IF ime$ = "
kraj" THEN EXIT DO
     ocj = Val(InputBox("
Upiši ocjenu:"))
     WRITE #1, ime, ocj
LOOP
CLOSE #1

'definiranje varijable za prihvat imena
'definiranje varijable za prihvat ocjene
'otvara datoteku za dopisivanje pod brojem #1
'početak petlje
'prihvat imena u varijablu ime
'ako je pod ime upisana riječ "
kraj" prekini petlju
'prihvat ocjene u var. ocj (Val je pretvara u broj)
'dodaj na kraj datoteke upisano ime i ocjenu
'idi na početak petlje
'zatvori datoteku pod brojem #1

Gornji primjer radi na istom principu kao i prethodni.

  

ČITANJE IZ DATOTEKE


Ako želimo učitati podatke iz neke datoteke koju smo prethodno formirali, onda datoteku otvaramo za ulaz/čitanje (FOR INPUT), kao u primjeru (ako datoteka ne postoji, pokušaj INPUT će rezultirati greškom!):

PROGRAMSKI KOD

OBJAŠNJENJE

Dim tekIme As String
Dim tekOcj As Integer
OPEN "
spisak.txt" FOR INPUT AS #1
Text1.Text = ""
DO WHILE NOT EOF(1)
       INPUT #1, tekIme, tekOcj
       Text1.Text = Text1.Text & tekIme _
                     & vbTab & tekOcj & vbCrLf
LOOP
CLOSE #1

'definiranje varijable za prihvat imena
'definiranje varijable za prihvat ocjene
'otvara datoteku za čitanje pod brojem #1
'isprazni sadržaj TextBoxa
'vrti petlju dok ne dođe do kraja datoteke (EOF)
'učitaj tekuće ime i ocjenu iz datoteke
'ispiši sadržaj varijabli tekIme i tekOcj u TextBox
'(vbTab=razmak, vbCrLf=novi red, _=spoj linije)
' idi na početak petlje ako NIJE kraj datoteke
'zatvori datoteku pod brojem #1

Gornji primjer otvara datoteku za čitanje i zatim vrti DO...LOOP petlju unutar koje prihvaća redom jedno po jedno ime i ocjenu iz datoteke (INPUT) i ispisuje te podatke u TextBox (čije svojstvo Multiline treba staviti na True!). Kada dođe do kraja datoteke, petlja se prekida i datoteka se zatvara (CLOSE).

Pri čitanju iz datoteke treba voditi računa o tome kojim su redom i kojeg su tipa podaci u datoteku upisivani i adekvatno tome definirati varijable za prihvat tih podataka u INPUT, jer u suprotnom podaci neće biti ispravno učitani ili će doći do greške!

VAŽNO: Ako datoteka "spisak.txt" ne postoji, gornji program će rezultirati greškom!
Zato je dobro na početak gornjeg programa dodati programski kod koji će to izbjeći:

OPEN "spisak.txt" FOR APPEND AS #1 : CLOSE #1

Time osiguravamo da će se datoteka automatski formirati ukoliko ne postoji a ako postoji onda će se samo na kratko otvoriti i odmah zatvoriti (CLOSE), bez izmjene. Doduše, ako datoteka ne postoji formirat će se prazna datoteka ali zato pokušaj otvaranja s INPUT neće rezultirati greškom!

Adsense sponzor







Adsense sponzor



  Ova web stranica koristi COOKIES - COPYRIGHT - 2006 - 2016 - IvanC - ic.ims.hr