Visual Basic-ben hogy lehet úgy beolvasni egy . Txt-t, hogy az adatok külön karakterekkel vannak elválasztva?
Például van egy struktúrált típusú tömböm, mely így néz ki :
Private Type Koltok
nev As String
szuletett As Long
meghalt As Long
End Type
Dim k(1 to 300) As Koltok
a .txt-ben pedig egy ilyen sorokból kell kinyerni a három adatot : "Petőfi Sándor=1823#1849"
Tudom hogy kell soronként beolvasni adatokat, tudom hogy kell stringet long-á alakítani, de ezt nem tudom hogy kell megcsinálni. Google-n utánanéztem, onnan sem értek semmit.
Mit kell csinálnom?
A sima sortörésenkénti adatelválasztásos így néz ki:
Dim k(1 To 300) As Koltok
Dim ystring As String
Open "magyarok3.txt" For Input As #1
For i = LBound(k) To UBound(k)
If EOF(1) Then Exit For
Line Input #1, k(n).nev
Line Input #1, ystring
k(n).kezd = CLng(ystring)
Line Input #1, ystring
k(I).veg = CLng(ystring)
List1.AddItem k(I).nev
List1.AddItem k(I).kezd & " - " & k(I).veg
Next n
Visual Basicben van egy parancs ami a stringet egy adott karakter mentén feldarabolja. Ez a SPLIT Így pl:
DIM SZÖVEG AS STRING = "HELLO+WORLD"
DIM VÁLTOZÓ = SZÖVEG.SPLIT("+")
'Ezután lehet rá hivatkozni VÁLTOZÓ(0) és VÁLTOZÓ(1)
VÁLTOZÓ(0) ennek értéke HELLO
VÁLTOZÓ(1) ennek értéke WORLD
részletes leírás:
Szerintem neked ezt így kéne csinálni:
dim szöveg as string
szöveg="Petőfi Sándor=1823#1849" 'ide olvasod be az adott sort
nev= szöveg.split("=")(0)
szuletett =val(szöveg.split("=")(1).split("#")(0))
meghalt = val(szöveg.split("=")(1).split("#")(1))
' Val() azért kell mert a split stringet ad vissza
Remélem segítettem:)
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!