Imam tekstualnu datoteku, iz koje trebam procitati tocno odredjeni redak i nista drugo...jel mogu to nekako izvesti bez da moram procitati cijeli fajl i onda tek izdvojit zeljeni redak?
P.S. svi redci sadrzavaju podatke tipa string
Imam tekstualnu datoteku, iz koje trebam procitati tocno odredjeni redak i nista drugo...jel mogu to nekako izvesti bez da moram procitati cijeli fajl i onda tek izdvojit zeljeni redak?
P.S. svi redci sadrzavaju podatke tipa string
Sjećam se da se u VB6 moglo sa file pointerom otvarati i čitati podatke po redovima, no iskreno otkad koristim VB2005, koristim druge metode čitanja i pisanja po fajlovima.
Nije nešto, možda ti ovaj link može pomoći http://forums.msdn.microsoft.com/en-US/vbgeneral/thread/5ac5d2b5-84e0-49af-b66a-933f8b6b5322/
Pozdrav.
Naj jednostavniji nacin na koji ovo mozes napravit je:
Private Function RetLine(ByVal FilePath As String, ByVal LineNum As Integer) As String
Dim str As String
Dim LineCnt As Integer = 0
Using read As IO.StreamReader = My.Computer.FileSystem.OpenTextFileReader(FilePath)
Do
str = read.ReadLine
If LineCnt = LineNum Then Return str
If LineCnt > LineNum Then Return ""
Loop While read.EndOfStream = False
End Using
Return ""
End Function
Nepostoji neka funkcija, ugrađena u VB, koju bi pozvao i zadao bi joj broj reda, a ona bi ti vratila rezultat. A da i postoji vjerojatno bi izgledala slicno ovoj jer za racunalo file nije nista nego 0 i 1 i skupina od 4 takve 0 i 1 cini jedan ASCII znak tj. byte. read.ReadLine trazi skupinu znakova CR(13 ASCII Decimal) + LF ili NL(10 Decimal ASCII) te ti vraca vrijednost između pocetnog CRLF i sljedećeg CRLF.
možeš varati pa staviti tekst u TextBox i zatim pozvati textBox.Lines :D
a možeš koristiti i string.split metodu koja podijeli string prema danom argumentu (polje chara ili stringa)