du kan splitta upp raden till en array, sedan loopa genom den arrayen och på det sättet få fram varje värde mellan tabbarna
cya,
PatrikB
------------------
'## -- second place is the first looser -- ##'
19 svar · 282 visningar · startad av origon
Hej, allt bara bra?
Jo det är så att jag skulle behöva lite hjälp med att läsa mellan tabbar i en textfil.
Jag vet hur man läser hela raden men hur gör jag om jag bara vill plocka ut texten mella tabbar t.ex.
Text1 Text2 Text3 Text4
Då vill jag att X1 = Text1 X2 = Text2 och så vidare.
Ska ha det till att lägga in informationen i en databas nämligen.
Hoppas ni förstår mig ;)
Hade bra alle
------------------
<A HREF="http://www.origons.com" TARGET=_blank>www.origons.com
</A>
[Redigerat av origon den 07 nov 2001]
[Redigerat av origon den 07 nov 2001]
du kan splitta upp raden till en array, sedan loopa genom den arrayen och på det sättet få fram varje värde mellan tabbarna
cya,
PatrikB
------------------
'## -- second place is the first looser -- ##'
exakt hur skulle den koden se ut? ;)
------------------
<A HREF="http://www.origons.com" TARGET=_blank>
www.origons.com
</A>
arr = split(textrad,chr(9))
for i = lbound(arr) to ubound(arr)
sql = "insert into ... " & arr(i) ...
'...
next
------------------
essentitia preter non sans multiplicandum
Tackar, men hur gör jag om jag vill att X1 ska läggas in i Fält 1 och X2 ska läggas in i fält 2?
Hoppas ni förstår, gör det knappt själv.
------------------
<A HREF="http://www.origons.com" TARGET=_blank>
www.origons.com
</A>
"insert into Tabell(fält1, fält2) VALUES('" & x1 & "','" & x2 & "')"
typ. :e
------------------
National Blonde Day!
Alle ihre Basis ist uns gehört.
Jo men hur får jag fram värdet X1 och X2 ur LarsG's kod?
ungefär såhär
arr = split(textrad,chr(9))
for i = lbound(arr) to ubound(arr) step 2
sql = "insert into ogrish(a,b) values('" & arr(i) & "','" & arr(i+1) & "')"
connect.execute sql,,128
next
------------------
essentitia preter non sans multiplicandum
Ahh LarsG du är min gud just nu :e
Du förstår inte hur tacksam jag är för detta...
hmm fick lite problem då jag skulle lägga in mer än 3 poster :(
Feltyp:
Körningsfel i Microsoft VBScript (0x800A0009)
Felaktigt matrisindex: '[number: 3]'
/test/text.asp, line 18
#16 arr = split(T.ReadLine,chr(9))
#17 for i = lbound(arr) to ubound(arr) step 5
#18 sql = "insert into movies(a,b,c,d) values('"& arr(i) &"','"& arr(i+1) &"','"& arr(i+2) &"','"& arr(i+3) &"')"
#19 connection.execute sql,,128
Men det fungerar om jag skriver såhär fast då får jag fel info i d
#16 arr = split(T.ReadLine,chr(9))
#17 for i = lbound(arr) to ubound(arr) step 5
#18 sql = "insert into movies(a,b,c,d) values('"& arr(i) &"','"& arr(i+1) &"','"& arr(i+2) &"','"& arr(i+2) &"')"
#19 connection.execute sql,,128
[Redigerat av origon den 07 nov 2001]
[Redigerat av origon den 07 nov 2001]
Varför har du step 5 när du gör insert på 4 värden?
------------------
essentitia preter non sans multiplicandum
Glömde byta tillbaka efter att provat en hel del värden ;)
Jag får följande fel då jag byter till 4
Feltyp:
Körningsfel i Microsoft VBScript (0x800A0009)
Felaktigt matrisindex: '[number: 9]'
/test/text.asp, line 18
Det beror ju på hur många värden det står på varje rad.
Om du har 5 värden så går inte det jämt upp i 4. Hur vill du göra med de extra värdena?
t.ex.
a b c d e
vill du ha
a b c d på en rad och
e null null null på en rad
eller skall man hoppa över e?
------------------
essentitia preter non sans multiplicandum
ahh så det måste stämma överens med antal värden,
Hur gör man om man vill att han ska hoppa över e?
och jag får detta felmeddelandet om jag byter ut t.ex a till size
Feltyp:
Microsoft JET Database Engine (0x80040E14)
Syntaxfel i INSERT INTO-uttryck.
/test/text.asp, line 19
[Redigerat av origon den 07 nov 2001]
Om du lägger till det fetstilta så borde man hoppa ur loopen om det inte finns 4 element till.
arr = split(T.ReadLine,chr(9))
for i = lbound(arr) to ubound(arr) step 4
[b]if i + 3 > ubound(arr) then exit for[/b]
sql = "insert into movies(a,b,c,d) values('"& arr(i) &"','"& arr(i+1) &"','"& arr(i+2) &"','"& arr(i+3) &"')"
connection.execute sql,,128
next
------------------
essentitia preter non sans multiplicandum
och jag får detta felmeddelandet om jag byter ut t.ex a till size
Vad är a och vad är size?
------------------
essentitia preter non sans multiplicandum
ahh tackar.. :)
Size är ett fält i databasen och jag menar att om man skriver såhär får man felmeddelandet.
sql = "insert into movies(size,b,c,d) values('"& arr(i) &"','"& arr(i+1) &"','"& arr(i+2) &"','"& arr(i+3) &"')"
Jag märkte att det hände samma sak med namnet user.
hoppas jag förklarade bättre denna gång.
user (och size) är ett reserverat ord i SQL så det kan vara lämpligt att byta ut det mot något annat.
Om du absolut vill använda user som kolumnnamn så får du skriva
sql = "insert into movies([user],b,c,d) values('"& arr(i) &"','"& arr(i+1) &"','"& arr(i+2) &"','"& arr(i+3) &"')"
Du får göra samma sak med size.
------------------
essentitia preter non sans multiplicandum
aha tack så mkt för allt :)