08. december 2001 - 23:40Der er
27 kommentarer og 2 løsninger
Frasorter emner i et objekt
Dette er faktisk et dobbelt spørsgmål (a og B)- 60 point for hver. I det nederste ASP vil jeg gerne kunne
A) at have en liste med textstrenge som der ikke må være indeholde i de objektor der bliver vist. Fx. variabel nonshow=(\'.js\', \'index.\') så kommer chesk.js og index.asp ikke frem i listen
A2) at have en liste med textstrenge der SKAL være i navnet før at den vises variabel justshow=(\'.htm\', \'.html\') så vises KUN htm og html filer fra mappen
B) også kunne se de mapper der er i mappen + A) + A2) (bare for mapperne naturligvis) :-) <% Dim strPathInfo, strPhysicalPath strPathInfo = Request.ServerVariables(\"SCRIPT_NAME\") strPhysicalPath = Server.MapPath(strPathInfo)
Dim objFSO, objFile, objFileItem, objFolder, objFolderContents Set objFSO = CreateObject(\"Scripting.FileSystemObject\")
Set objFile = objFSO.GetFile(strPhysicalPath) Set objFolder = objFile.ParentFolder Set objFolderContents = objFolder.Files %> <font face=verdana size=2>
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.
jeg kan ikke se grunnen til at du både skal ha en liste over filer en ikke skal få listet ut *og* en liste over lovlige filer...anyway...er dette noe ála det du søker:
<% Dim strPathInfo, strPhysicalPath strPathInfo = Request.ServerVariables(\"SCRIPT_NAME\") strPhysicalPath = Server.MapPath(strPathInfo)
Dim objFSO, objFile, objFileItem, objFolder, objFolderContents Set objFSO = CreateObject(\"Scripting.FileSystemObject\")
Set objFile = objFSO.GetFile(strPhysicalPath) Set objFolder = objFile.ParentFolder Set objFolderContents = objFolder.Files %> <font face=verdana size=2>
Grunden til at jeg gerne ville have både en not og en do er: man vil fx gerne have alle htmlfilerne vist - men index.html Eller man vil vise en bunke billeder i en mappe - men ikke lige én bestemt
nute --> den viser slet ikke noget - overhovet :-(
magik --> det er selvfølgelid dumt hvis i begge laver det samme arbejde. Men jeg ville blive meget glad hvis du ville hjælpe
Hmm - i javascript har man en \"variabel.indexOf(\'noget\')\". Det kommer tilbage med første charter hvorder er et \"n\" efterfulgt af \"oget\". Hvis der ikke ern nogen kommer der -1. Har Man ikke en streng operation med samme funktion i ASP? så skulle det jo hede
<% For Each objFileItem In objFolderContents if (test() Response.Write \"<TR><TD align=left><font face=verdana size=2><a href=\'\" Response.Write objFileItem.Name+\"\'>\" Response.Write objFileItem.Name Response.Write \"</a></TD><TD align=right><font face=verdana size=2>\" Response.Write objFileItem.Size Response.Write \"</TD><TD align=right><font face=verdana size=2>\" Response.Write objFileItem.DateLastModified Response.Write \"</TD></TR>\" Next %>
tentakkel >> den viser faktisk noe for meg. jeg har 3 filer den folderen jeg kjører scriptet i, men jeg får kun listet ut min .html fil...så scriptet fungerer.
hvis du kikker litt på scriptet jeg har postet, så kan du se at jeg har benyttet funksjonen \'InStr\'. dette er ekvivalent med javascript sin \'indexOf\'
Grunden til at jeg gerne ville have både en not og en do er: man vil fx gerne have alle html filerne vist - men ikke index.html. Eller man vil vise en bunke billeder i en mappe - men ikke lige ét bestemt
nute --> den viser slet ikke noget - overhovet :-(
magik --> det er selvfølgelid dumt hvis i begge laver det samme arbejde. Men jeg ville blive meget glad hvis du ville hjælpe :-)
Hmm - i javascript har man en \"variabel.indexOf(\'noget\')\". Det kommer tilbage med første charter i variablen hvorder er et \"n\" (efterfulgt af \"noget\"). Hvis der ikke er nogen \"noget\" i variablen returnere den -1. Har Man ikke en streng operation med samme funktion i ASP? så skulle det jo hede
<% notShow = \".js, index.\" doShow = \".htm, .html\" For Each objFileItem In objFolderContents if (test()) then Response.Write \"<TR><TD align=left><font face=verdana size=2><a href=\'\" Response.Write objFileItem.Name+\"\'>\" Response.Write objFileItem.Name Response.Write \"</a></TD><TD align=right><font face=verdana size=2>\" Response.Write objFileItem.Size Response.Write \"</TD><TD align=right><font face=verdana size=2>\" Response.Write objFileItem.DateLastModified Response.Write \"</TD></TR>\" Next %>
fuction test(variabel) { for(i=0;notShow.length!=i;i++){ if (variabel.indexOf(notShow[i]!=-1) {return false} } for(i=0;notShow.length!=i;i++){ if (variabel.indexOf(doShow[i]=-1) {return false} } return true }
(Det er naturligvis noget sluder at blande Javascript og ASP - men det blot betydningen af det)
if( InStr( notShow, fileName ) > 0 OR InStr( notShow, fileExt ) > 0 ) then returnVal = false end if
if( returnVal AND ( InStr( doShow, fileName ) > 0 OR InStr( doShow, fileExt ) > 0 ) ) then returnVal = true else returnVal = false end if testString = returnVal end function %>
Hov ja - den viser noget. Men man SKAL bare indtaste noget i doShow feltet - man skal kunne lade være med at skrive noget. Jeg tror også at vi har misforstået hinanden mht. notShow = \".js, index.\" og doShow = \".htm, .html\" - det ikke extensiont jeg er ude efter - det må også gerne være en del af resten af navnet
<% notShow = \".js, index.\" doShow = \".htm, .html\" For Each objFileItem In objFolderContents if (test()) then Response.Write \"<TR><TD align=left><font face=verdana size=2><a href=\'\" Response.Write objFileItem.Name+\"\'>\" Response.Write objFileItem.Name Response.Write \"</a></TD><TD align=right><font face=verdana size=2>\" Response.Write objFileItem.Size Response.Write \"</TD><TD align=right><font face=verdana size=2>\" Response.Write objFileItem.DateLastModified Response.Write \"</TD></TR>\" end if Next %>
fuction test(variabel) { //tester alle notShow\'erne i filnavnet. hvis den findes så er indexOf andet end -1 og så returnere den bare false for(i=0;notShow.length!=i;i++){ //hvis notShow ikke indeholder noget (.length = 0) vil den bare springe denne for-lykke over - og så vil det ikke betyde noget at man lader den stå tom - så SKAL man ikke angive om det er noget den ikke må hede if (variabel.indexOf(notShow[i])!=-1) {return false} } //tester alle doShow\'erne i filnavnet. hvis den ikke findes så ER indexOf -1 og så returnere den bare false (fordi der SKAL være der ikke findes) for(i=0;notShow.length!=i;i++){ //hvis doShow ikke indeholder noget (.length = 0) vil den bare springe denne for-lykke over - og så vil det ikke betyde noget at man lader den stå tom - så SKAL man ikke angive om det er noget den ikke må hede if (variabel.indexOf(doShow[i]=-1) {return false} } return true }
Jeg forstår ikke min computer lige nu - den sender lidt - og så sender den ikk - men nu har du lige skrevet noget. - du må undskylde hvis jeg snakker om noget du har løst for længe siden :-/
<% notShow = \"01-8-8.\" doShow = \".doc\" For Each objFileItem In objFolderContents fileFullName = objFileItem.Name if( testString( fileFullName ) ) then Response.Write \"<TR><TD align=left><font face=verdana size=2><a href=\'\" Response.Write fileFullName & \"\'>\" Response.Write fileFullName Response.Write \"</a></TD><TD align=right><font face=verdana size=2>\" Response.Write objFileItem.Size Response.Write \"</TD><TD align=right><font face=verdana size=2>\" Response.Write objFileItem.DateLastModified Response.Write \"</TD></TR>\" end if Next
function testString( ByVal fName ) returnVal = true if( InStr( notShow, fileFullName ) > -1 ) then returnVal = false end if if( InStr( doShow, fileName ) < 0 ) then returnVal = false end if testString = returnVal end function %>
Det er helt rigtigt - Men det skal ikke være adskilt af extingtion - det skal være hele navnet den skal søge i (det er hvad jeg har forsøgt at lave her i den sidste)
oki....du er ikke særlig god til å forklare deg....
du har en folder som du løper innholdet igjennom. for at en fil i denne folder skal bli listet ut, så skal den oppfylle noen kriterier. deler av hele filnavnet (filnavn + extention) må ikke forekomme i \'notShow\' variabelen ?
med andre ord...
notShow inneholder \'01-8-8\' doShow inneholder \'.doc\'
hvis vi har filen \'01-8-8.doc\', så skal filen *ikke* vises hvis vi har filen \'01-8-9.doc\', så skal filen vises hvis vi har filen \'01-8-8.inc\', så skal filen *ikke* vises
er dette korrekt ?
og ja...det har en betydning hvor du legger koden i posting @ 09/12 2001 01:16:27. filen *skal* se ut som den jeg har postet @ 09/12 2001 00:59:50, med unntak at \'testString\' functionen kan legges hvor som helst i filen...
<% Dim strPathInfo, strPhysicalPath strPathInfo = Request.ServerVariables(\"SCRIPT_NAME\") strPhysicalPath = Server.MapPath(strPathInfo)
Dim objFSO, objFile, objFileItem, objFolder, objFolderContents Set objFSO = CreateObject(\"Scripting.FileSystemObject\")
Set objFile = objFSO.GetFile(strPhysicalPath) Set objFolder = objFile.ParentFolder Set objSubFolders = objFolder.SubFolders Set objFolderContents = objFolder.Files
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.