21. maj 2001 - 18:22Der er
10 kommentarer og 1 løsning
Hjælp en ASP nybegynder
Jeg er ved at lave en side der skal trække noget information ud af en tekstfil og indsætte det i en tabel. Mit problem er at jeg ikke ved hvor mange rækker der er brug for i tabellen (men max 10.) Det vil sige at jeg opretter 10 række i mit asp dokument, og det er ikke noget problem, men hvis jeg så ikke har 10 linier i min tekstfil kommer der en fejlmeddelelse på asp siden. Jeg havde fprestillet mig at det kunne løses med en linie der sagde noget hen af: \"Hvis næste linie i tekstfilen er tom så stop nu og skriv html koden </table> ellers fortsæt med disse asp koder\" Jeg håber jeg gør mig selv forståelig..
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Dette ligner lidt den kode jeg har stykket mig sammen til, jeg har blot også nogle arrays med Dete er så ved linjen med *\'erne jeg havde forestillet mig noget i stil med if line = \"\" (tom) then response.write </table> else osv. osv. osv. end if
<html> <title>Læse fra tekstfiler</title> <head> </head> <body> <table> <tr> <td> <% Dim fso, f, filespec Set fso = CreateObject(\"Scripting.FileSystemObject\") filespec = Server.Mappath(\"/tutorials/asp/ministerier.txt\") Set f = fso.OpenTextFile(filespec,1)
Response.write f.ReadLine </td> </tr> <tr> <td> ************************************* For intLine = 1 to 0 f.SkipLine Next
Jeg tror ikke helt jeg er blevet forstået rigtigt: Lad os sige at vi har en tekstfil (program.txt) med 2 linjes tekst som skal vises i browseren i 2 forskellige tabeller så ville koden være således:
<html> <title>Læse fra tekstfiler</title> <head> </head> <body> <table> <tr> <td> <% Dim fso, f, filespec Set fso = CreateObject(\"Scripting.FileSystemObject\") filespec = Server.Mappath(\"/program.txt\") Set f = fso.OpenTextFile(filespec,1)
Response.write f.ReadLine %>
</td> </tr> <tr> <td> <% For intLine = 1 to 0 f.SkipLine Next
Response.write f.ReadLine & \"<br>\"
f.Close %> </tr> </td> </table> </body> </html>
Hvis jeg nu sletter den 2. linje i program.txt så vil jeg få en fejlmeddelse i browseren fordi den får besked på at vise en linjes tekst som ikke findes. Det var det Jeg ville undgå Med et stykke kode, der undersøger om linje 2 er tom og hvis dette er tilfældet skal tabellen afsluttes med </table> og hvis linje 2 indeholder tekst, skal den så udskrives i tabellen...
Det må være noget i denne stil, men hvad er der galt?
<% Dim fso, f, filespec Set fso = CreateObject(\"Scripting.FileSystemObject\") filespec = Server.Mappath(\"/program.txt\") Set f = fso.OpenTextFile(filespec,1)
response.write f.readline
<% For intLine = 1 to 0 f.SkipLine next if line = \"tom\" then
Sådan her: Først loades filen linie for linie ind i arrayet \"arrLines\". Derefter kan du bruge arrLines(linie_nr) for at få indholdet af den pågældende linie (numrene starter ved 0).
UBound(arrFiles) vil fortælle dig hvor mange linier der er i alt.
<% Dim fso, f, filespec, strFile ReDim arrLines(0)
Set fso = CreateObject(\"Scripting.FileSystemObject\") filespec = Server.Mappath(\"/program.txt\") Set f = fso.OpenTextFile(filespec,1)
Do Until f.AtEndOfStream arrLines(UBound(arrLines)) = f.ReadLine ReDim Preserve arrLines(UBound(arrLines) + 1) Loop ReDim Preserve arrLines(UBound(arrLines) - 1) f.Close: Set f = Nothing Set fso = Nothing
If UBound(arrFiles) = 0 Then Response.Write \"Der er kun een linie i filen!\" Else Response.Write \"Der er mere end een linie i filen!\" End If %>
Med lidt møje og besvær fik jeg det til at virke, men det er ikke den kønneste programkode jeg har set... Hvis andre skulle komme forbi med det samme problem så skal arrFiles i den 6. sidste linje ændres til arrLines...
-->tdaugaard, hvordan ændrer jeg det antal point der er sat på dette spørgsmål, så du kan få de 200 jeg lovede dig?
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.