Avatar billede scarface335 Nybegynder
13. marts 2008 - 09:44 Der er 4 kommentarer og
1 løsning

Spørgsmål til Scripting.FileSystemObject

Hej.
Kan man med Scripting.FileSystemObject hente alle filer i en mappe der starter med noget bestemt. Som man f.eks kan med Ftp kommandoen "ls Test", som vil returnere alle filer der starter med "Test".
Avatar billede softspot Forsker
13. marts 2008 - 10:04 #1
Ikke umiddelbart, men du kan kan jo lave din egen. Du skal bruge et Folder-objekt og dennes Files-collection. Så kan du checke hvert filnavn op mod et regulært udtryk og hvis det matcher, så returnere File-objektet.

Noget i stil med dette:

function getFiles(folderspec, filepattern)
  dim rx
  dim fso, fldr, f
  dim arrFiles, idx

  arrFiles = Array()

  set rx = new RegEx
  rx.IgnoreCase = true
  rx.Global = true
  rx.MultiLine = true
  rx.Pattern = filepattern

  set fso = CreateObject("Scripting.FileSystemObject")
  set fldr = fso.GetFolder(folderspec)
  idx = 0
  for each f in fldr.Files
    if rx.Test(f.Name) then
      redim preserve arrFiles(idx)
      set arrFiles(idx) = f
      idx = idx + 1
    end if
  next
  set fldr = nothing
  set fso = nothing

  getFiles = arrFiles
end function

' Test funktionen
dim files, f, txt
txt = "Følgende filer matcher:" & vbCrLf
files = getFiles("c:\", "test[.]*")
for each f in files
  txt = txt & f.Name & vbCrLf
next
MsgBox txt
Avatar billede scarface335 Nybegynder
13. marts 2008 - 11:33 #2
ja, den kender jeg godt, ja den kender jeg godt problemet er at det er et networkshare med over 100.000 filer, så det tager en evighed, ls metoden fra Ftp gør det på et split sekund, jeg bli´ver nok bare nød til at indse at det skal gøres med Ftp
Avatar billede softspot Forsker
13. marts 2008 - 12:41 #3
Ja, hvis du ikke kan bruge .NET (her tror jeg nemlig der er en mulighed for at læse filer fra en mappe vha. wildcards)...
Avatar billede scarface335 Nybegynder
14. april 2008 - 13:43 #4
Har desværre ikke muligheden for at bruge .Net.
Avatar billede scarface335 Nybegynder
14. april 2008 - 13:44 #5
jeg lukker spørgsmålet
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester