Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB.NET: VB .NET tiedoston lukeminen

Tehy [01.08.2005 16:41:02]

#

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

Juice [01.08.2005 18:33:13]

#

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.

Tehy [02.08.2005 19:17:38]

#

hmm... toimii, jos [HOME] on ekalla rivillä, muuten ei tomi...

Juice [02.08.2005 19:47:18]

#

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

Blaze [03.08.2005 13:56:11]

#

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.

Tehy [05.08.2005 19:55:22]

#

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...

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta