Minulla on .txt tiedosto jossa on esim:
[VAL1]1
[HOME]http://www.google.com
[POPUP]2
Miten voin lukea kyseisen tiedoston niin, että ohjelma etsii, vaikka tiedostosta [HOME] ja lukee sen jälkeen loput siltä riviltä eli http://www.google.com
Yhden rivin lukeminen onnistuu:
Dim objStreamReader As StreamReader Dim strLine As String objStreamReader = New StreamReader("setup.txt") strLine = objStreamReader.ReadLine ComboBoxItem1.ControlText = strLine
Helppo tapa on käyttää startswith-, indexof- ja substring-metodeita:
Dim objStreamReader As StreamReader Dim strLine As String objStreamReader = New StreamReader("setup.txt") strLine = objStreamReader.ReadLine If strLine.startsWith("[HOME]") Then strLine = strLine.substring(strLine.indexOf("]")+1) ComboBoxItem1.ControlText = strLine
Toki kätevämpiäkin tapoja varmaan on, mutta tuo on helppo tapa.
hmm... toimii, jos [HOME] on ekalla rivillä, muuten ei tomi...
Aivojakin saa käyttää, ja silmukoita myös.
Dim objStreamReader As StreamReader Dim strLine As String objStreamReader = New StreamReader("setup.txt") While True strLine = objStreamReader.ReadLine If strLine = "" Then Exit While If strLine.startsWith("[HOME]") Then strLine = strLine.substring(strLine.indexOf("]")+1) ComboBoxItem1.ControlText = strLine End While
Kannattanee käyttää standardia INI-formaattia, jonka sekä lukemiseen, että kirjoittamiseen, löytyy valmiit funktiot ainakin WinApista ja todennäköisesti myös .NET-kirjastosta.
Kiitos, toimii! Nyt pitäs vielä saada homma pelaan toiseen suuntaan :P eli pitäs pystyä kirjoittamaan tuohon tiedostoon... Samalla tyylillä eli etsii, vaikka nyt tuon [HOME] ja kirjoittaa siihen perään...
Hmm... pitänee myös katsella jos löytyy jotain tuosta INI jutusta...
Aihe on jo aika vanha, joten et voi enää vastata siihen.