08. juni 1999 - 16:55Der er
9 kommentarer og 1 løsning
FileExists
Er der nogen der ved om man kan bruge FileExists metoden til at søge efter en bestemt fil i et bestemt biblotek? Jeg prøver med følgende kode, men den virker ikke som den burde :-) <% Sub PdfFileExists(name) Dim fSystem, tag, fil tag = "<img src=''" & name & ".gif'' border=''0''>" fil = name & ".gif" Set fSystem = CreateObject("Scripting.FileSystemObject") if (fSystem.FileExists(fil)) then response.write(tag) end if end sub %>
Man kan selvfølgelig kode så den kigger på hver fil i en given folder med GetFolder, Files og en løkke. Men det bliver hurtigt meget langsomt.
<% name = "bla.gif" Set FileSystem = CreateObject("Scripting.FileSystemObject") If FileSystem.FileExists("c:\internet\"& name) Then Response.write "JAA" else Response.write "nej" end if %>
<SCRIPT LANGUAGE=VBScript RUNAT=Server> FUNCTION FileExists (ByVal FileName) on error resume next FileName = Server.MapPath (FileName) Set FileObject = Server.CreateObject("Scripting.FileSystemObject") Set InStream = FileObject.OpenTextFile (FileName, 1, FALSE, FALSE) if err = 0 then FileExists = TRUE else FileExists = FALSE end if end Function </SCRIPT>
Det synes jeg fordi: 1. God programmeringsskik... Hvis man nu laver en funktion, så kan den også bruges af andre... 2. Dit script forudsætter, at filen er placeret på c-drevet.. Hvor ved du det fra? 3. Ja, dit script er lettere at finde rundt i, men man behøver ikke finde rundt i mit... man kalder bare funktionen...
P.S. Jeg skrev ikke scriptet for at tage dine point...
Hummm, mit script forudsætter da ikke at filen ligger på C: Det var såmen bare for at VISE ham hvordan han skulle gøre. Desuden kan man også bare lave det om....
...Ups... Jeg må vidst have trådt et forkert sted... Jeg troede denne site, var til for at hjælpe folk... På flere forskellige måder. Hvis du vil fortsætte, så kan jeg oprette et spørgsmål... (O:
Hmm, forskellen på de 2 scripts kan måske ligge i hastighed. I hornshojs åbnes filen til læsning, hvilket betyder, at der skal indlæses en del af filen i en buffer (hvis den findes), mens der ikke skal indlæses noget af filen i chatstuffs, som til gengæld ikke ligefrem er ret generel ;-)
Så hvis vi nu krydser de 2: altså laver en generel funktion, der bruger den indbyggede FileExists, så tror jeg vi har det ultimative svar!
Der er bare den lille hage... Mit script skal jo også kun bruges, hvis man virkelig ønsker at læse den fil man spørger efter... Det kan jeg godt se, at gik spm ikke ud på fra starten...
Ja ja et gammelt spørgsmål, men jeg brugte det til at løse mit problem. Synes bare nedenstående har noget for sig...
Set fs = CreateObject("Scripting.FileSystemObject") billedefil = server.mappath("etsubdir\" & FornavnTekst & EfternavnTekst & ".jpg") If fs.FileExists(billedefil) then Response.Write "<IMG SRC=""" & billedefil & """ alt=""Billede af noget"" >" Else Response.write "Billede findes ikke" end if 'fs.close close understøttes ikke Set fs = Nothing
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.