U ovom tutorijalu cemo nauciti kako da na prost nacin citamo i pisemo neki fajl.
Ovaj tutorijal ce vam objasniti vrlo bitan kod koji je koristan svakom programeru od pocetnika do profesionalaca, skoro svaka aplikacija koristi obicno pisanje i citanje.
Kod se moze koristiti za mnogo toga od pisanja postavka programa, ucitavanja lista, citanja redova, citanja celog dokumenta, itd.
Tutorijal cemo podeliti na par dela :
Deo Prvi
- Stavka Jeadan - Citanje i Snimanje unapred odredjenog TxT Dokumenta
- Stavka Dva - Citanje bilo kog dokumenta po izboru korisnika
Deo Drugi - Ucitavanje i snimanje liste sa podacima
Deo Treci - Snimanje postavka programa bez enkripcije
(Ukoliko zelite da pogledate poseban deo koji vas zanima pritisnite CTRL+F i u Search polje upisite jedan od delova)
Deo Prvi Stavka Jedan
Citanje i Snimanje TxT Dokumenta
Korak 1. - Napravite nov projekat
Korak 2. - Napravite sledece kontrole i podesite parametre
- Dva dugmeta ( Button1 text = Ucitaj, Button2 Text = Snimi )
- Jedan text box ( Name = "txtbox" , Multiline = True )
Korak 3. - Pravimo odredjeni dokument
Preuzeti [url=https://www.mycity.rs/must-login.png txt fajl i kopirati ga u "C:\"
Korak 4. - Pisanje koda za dugme ucitaj
Dvoklik na Dugme "Ucitaj" i kucati sledeci kod :
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim ucitajdokument As New System.IO.StreamReader("C:\Dokument.txt") 'Ucitava dokument sa lokacije "C:\Dokument.txt"
Dim ucitandokument As String = ucitajdokument.ReadToEnd 'Upisuje sadrzaj dokumenta od pocetka do kraja i upisuje ga u string "
txtbox.Text = ucitandokument 'Prikazuje sadrzaj stringa u tekst box
ucitajdokument.Close() ' Zatvara konekciju izmedju citaca i dokumenta
End Sub
Korak 4. - Pisanje koda za dugme snimi
Dvoklik na dugme Snimi i pisati sledeci kod :
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim sacuvajdokument As New System.IO.StreamWriter("C:\Dokument.txt") 'Stvaramo konekciju izmejdu fajla i pisaca
Dim upisuj As String = txtbox.Text 'Deklarisemo string koji cita unos tekst boxa
sacuvajdokument.Write(upisuj) 'Pisemo u dokument sadrzaj tekst boxa
sacuvajdokument.Close() 'Zatvaramo konekciju izmecu pisaca i dokumenta
End Sub
Sada imamo gotov primer pisanja i citanja unapred odredjenog fajla.
Prilozeni projekat mozete preuzeti [url=https://www.mycity.rs/must-login.png
]ovde[/url].
Deo Prvi Stavka Dva
Citanje i snimanje TxT dokumenta definisanog od strane korisnika
Korak 1. - Dodavanje kontrola na formu
Koristeci formu starog projekta :
Na formu dodati sledece kontrole i podesiti parametre :
-2 Dugmeta ( Button 3 = "Ucitaj 2" Button 4 text = "Sacuvaj 2" )
-OpenFileDialog (Name = "Otvorifajl" )
-SaveFileDialog (Name = "Sacuvajfajl" )
Korak 2. - Pisanje koda za dugme Ucitaj 2
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Ucitajfajl.Title = "Otvori fajl" 'Naziv koji ce pisati korisniku kad klikne na Ucitaj 2 dugme
Ucitajfajl.Filter = "Tekst Fajlovi|*.txt" 'Dodajemo ekstenziju koja ce moci biti otvorena u nasem slucaju to ce biti samo txt
Ucitajfajl.ShowDialog() 'prikazivanje openfile forme
Dim ucitajpoizboru As New System.IO.StreamReader(Ucitajfajl.FileName) 'deklarisem nov streamreader koji koristi putanju openfile dialoga
Dim tekst As String = ucitajpoizboru.ReadToEnd 'cita tekst od pocetka do kraja i
txtbox.Text = tekst 'upisuje ga u tekst polje
ucitajpoizboru.Close() ' zatvara konekciju
End Sub
Korak 2. - Pisanje koda za dugme Sacuvaj 2
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
Sacuvajfajl.Title = "Sacuvaj fajl" ' Naziv koji ce pisati korisniku kad klikne na Sacuvaj 2 dugme
Sacuvajfajl.Filter = "Tekst Fajlovi |*.txt" 'Definisanje ekstenzija
Sacuvajfajl.ShowDialog() 'prikazuje savefile formu
Dim sacuvajpoizboru As New System.IO.StreamWriter(Sacuvajfajl.FileName) 'deklarise nov streamwriter i koristi naziv iz savefile forme za putanju
sacuvajpoizboru.Write(txtbox.Text) 'pise tekst u nov tekst fajl
sacuvajpoizboru.Close() 'zatvara konekciju
End Sub
Kao sto vidite ovaj kod koristi Openfile i Save file dialog da bi pruzio korisniku izbor mesta pisanja i citanja ukoliko zelite da date korisniku mogucnost biranja mesta.
Prilozeni deo projekta mozete naci [url=https://www.mycity.rs/must-login.png
Deo Drugi
Korak 1. - Dodavanje novih kontrola na formu
Koristite stari projekat i dodajte sledece kontrole podesavajuci njihove parametre :
-Listbox ( Name "listbox")
- Dugme 3 ( Button5 text = "Ucitaj Listu", Button 6 text = "Snimi listu Button7 text = "Dodaj u listu"
- textbox ( textbox name = "dodajlisti" , text = " " )
Korak 2. - Preuzimanje fajla
Preuzeti [url=https://www.mycity.rs/must-login.png fajl i staviti u "C:\"
Korak 3. - Pisanje koda dugmetu Dodaj u listu
Dvoklik na dugme Dodaj u listu i napisati sledeci kod :
listbox.Items.Add(dodajlisti.Text) 'Dodajemo stavku listi iz dodajlisti tekst boxa
Dodali smo ovo samo da bi smo testirali da li funkcije liste rade
Korak 4. - Pisanje koda dugmetu Ucitaj listu
Dvoklik na dugme Ucitaj listu i napisati sledeci kod :
Dim citajlistu = New IO.StreamReader("C:\Listafajl.txt") 'otvaramo konekciju sa fajlom
While (citajlistu.Peek() > -1) 'provera
listbox.Items.Add(citajlistu.ReadLine) 'cita tekst fajla i dodaje stavke jednu po jednu zahvaljujuci "readline"
End While
citajlistu.Close() 'zatvara konekciju
Korak 5. - Pisanje koda dugmetu Sacuvaj listu
Dvoklik na dugme savucaj listu i napisati sledeci kod :
Dim i As Integer 'deklarisemo i za petlju
Dim pisilistu = New IO.StreamWriter("C:\Listafajl.txt") 'otvaramo konekciju sa fajlom
For i = 0 To listbox.Items.Count - 1 ' petlja koja cita sve stavke liste
pisilistu.WriteLine(listbox.Items.Item(i)) ' pisemo u nov fajl red po red teksta iz liste
Next 'nastavljamo petlju
pisilistu.Close() 'zatvaramo konekciju
Eto ga! Kao sto ste primetili ucitavanje u listu ne moze da se radi kao citanje tekst boxa , za ucitavanje u listu moramo koristiti petlju.
Petlja u sustini cita dokument redom liniju po liniju dok ne stigne do kraja dokumenta.
Ukoliko zelite da date mogucnost korisniku da izabere gde ce snimiti ili otvoriti fajl koji bi se ucitao u listu koristite tehniku kao za tekst box samo ubacite petlju za streamreader/writer.
Sada kada smo sve ovo naucili mozemo da uradimo jednu zanimljivu stvar koja se najcesce koristi. Napravicemo podesavanja za program koja ce program ucitati pri svakom pokretanju a koje ce korisnik moci da izmeni bilo kada.
Projekat preuzeti [url=https://www.mycity.rs/must-login.png
]ovde[/url].
Deo Treci - Snimanje postavka programa bez enkripcije
Ideja :
Korisnik zeli da sacuva postavke programa koje bi se same ucitavale pri pokretanju programa tako da on ne mora da ih podesava svaki put kada pokrene program.
Iskoristicemo ceo ovaj projekat ponovo !
Posto nemamo konkretan primer kakvih podesavanja mozemo da podesimo improviziracemo.
Recimo da korisnik ovog programa zeli da podesi posebnu boju forme ili da izabere poruku dobrodoslice ili da sacuva ucitane fajlove koje je otvorio kad ponovo pokrene aplikaciju.
Koristicemo fajl koji ce program ucitavati pri pokretanju i prema njemu podesavati postavke programa.
Korak 1. - Modifikacija forme
Na formi napraviti sledece kontrole redom kako je napisano :
Dugme ( text = Sacuvaj postavke )
GroupBox ( Text = Boje ; Name = gb1 )
GroupBox ( Text = Poruka Dobrodoslice ; Name = gb2)
Sada napravite combo box unutar gb1 kontrole
--- Sada praviti sledece kontrole u gb2 kontrolu ( unutar nje )
Radiant box 3 ( text = Dobrodosli, Cao, Bez poruke)
Ukoliko ste se zbunili ovako sada treba da izgleda vasa forma :
Korak 2. - Pisanje koda
Dim pisipostavke As New System.IO.StreamWriter("C:\postavke.tut")
'Provera koje je korisnik stavke izabrao samim uslovom odredjujemo sta ce se upisati u fajl
pisipostavke.WriteLine(bojaupis)
pisipostavke.WriteLine(porukaupis)
pisipostavke.Close()
' U zavisnosti od ovih postavki , kada program ucita pri pokretanju postavke mocicemo da napisemo uslov koji ce proveriti i podesiti postavke po deklarisanim
[/code]
[i]Korak 3. - Pisanje koda provere postavki[i]
Dvoklik na formu pa pisite sledeci kod :
Dim boja As String ' deklaracija za proveru postavki
Dim dobrodoslica As String ' -II-
If System.IO.File.Exists("C:\postavke.tut") Then 'Provera da li fajl sa postavkama postoji ukoliko postoji :
Dim citajpostavke As New System.IO.StreamReader("C:\postavke.tut") 'ucitavamo fajl
boja = citajpostavke.ReadLine ' citamo prvu liniju fajla ako se secamo prva linija opisuje boje
dobrodoslica = citajpostavke.ReadLine ' citamo drugu liniju za poruku dobrodoslice
citajpostavke.Close() ' zatvaramo konekciju
End If
'Pisemo uslove za deklarisane, zahvaljujuci ovim uslovima program ce podesiti postavke
If boja = "plava" Then
Me.BackColor = Color.Blue
ElseIf boja = "crna" Then
Me.BackColor = Color.Black
ElseIf boja = "siva" Then
Me.BackColor = Color.Gray
ElseIf boja = "0" Then
Me.BackColor = Color.Magenta
End If
If dobrodoslica = "1" Then
MsgBox("Dobro Dosli!")
ElseIf dobrodoslica = "2" Then
MsgBox("Cao")
ElseIf dobrodoslica = "0" Then
End If
Takodje na vrhu koda upisite :
Dim bojaupis as string
Dim porukaupis as string
Dvoklik na combox i upisite :
If ComboBox1.Text = "Plava" Then bojaupis = "plava"
If ComboBox1.Text = "Siva" Then bojaupis = "siva"
If ComboBox1.Text = "Obicno" Then bojaupis = "obicno"
If ComboBox1.Text = "Crna" Then bojaupis = "crna"
Prilozeni projekat mozete preuzeti [url=http://fotkica.com/uploads2N/96967_577430292_Deo%20Prvi%20Ucitavanje%20i%20Snimanje%20TxT%20Dokumenta.7z]ovde.[/url]
(P
'APLIKACIJA NAPISANA ZA FORUM WWW.MYCITY.RS TUTORIJAL JE NAPISAO KORISNIK FORUMA SRKI'94
'APLIKACIJA SLUZI PRVENSTVENO ZA EDUKACIJU
'CILJ OVE APLIKACIJE JE BIO POKAZATI LAK NACIN UPRAVLJANJEM FAJLOVA OSTALIM LJUDIMA KOJI ZELE DA NAUCE NESTO NOVO
'JEDAN OD CILJEVA BIO JE I IMATI SVE VRSTE UPRAVLJANJA FAJLOVIMA NA JEDNOM MESTU U JEDNOJ APLIKACIJI OTVORENOG KODA
'KOPIRATI OVAJ TUTORIJAL I TVRDITI DA JE VAS NIJE DOZVOLJEN I U TIM SITUACIJAMA CE NADLEZNI ADMINISTRATORI SA FORUMA BITI OBAVESTENI [/code]
|