Avatar billede mhp_dk Nybegynder
06. september 2005 - 07:56 Der er 9 kommentarer og
1 løsning

Dir og en tekst fil kombineret i ny tekstfil

Hej

Et lille eksempel som beskriver mit problem:

Jeg 3 PDF filer som hedder 1.PDF, 2.PDF og 4.PDF

Jeg har en tekst fil som ser sådan ud:
1,tekst
2,tekst1
3,tekst2
4,tekst4

Jeg vil gerne have en VBscript som kan lave en ny tekst fil som ser sådan her ud:

1, tekst1
2, tekst2
4, tekst4


Altså det er PDF filer der bestemmer hvordan den nye tekst fil ser ud.
3,
Avatar billede softspot Forsker
07. september 2005 - 03:12 #1
Hvad så hvis der er flere PDF-filer end der er linier i tekstfilen, skal de så tilføjes? I så fald, hvilken tekst skal de nye filer tildeles i tekstfilen?
Avatar billede softspot Forsker
07. september 2005 - 04:06 #2
Dette script løser det du giver et eksempel på ovenfor, så må du jo sige til hvis det skal kunne mere end det...

Here goes:
---------------
set fso = CreateObject("Scripting.FileSystemObject")
set strmRef = fso.OpenTextFile("pdflist.txt",1)
strRef = strmRef.ReadAll()
strmRef.Close

arrRef = split(lcase(strRef),vbCrLf)

maxRef = ubound(arrRef)

set fldr = fso.GetFolder(".")

' undersøg om de enkelte filer i listen findes...
on error resume next
for i = 0 to maxRef
    arrLnParts = Split(arrRef(i),",")
    set fl = fso.GetFile(fldr.Path & "\" & arrLnParts(0) & ".pdf")
    if err.number <> 0 then
        arrRef(i) = ""
        maxRef = maxRef - 1
        err.clear
    end if
next
on error goto 0

' Kondenser listen, dvs. fjern tomme pladser
ptr = 0
for i = 0 to ubound(arrRef)
    if arrRef(i) <> "" and arrRef(ptr) = "" then
        arrRef(ptr) = arrRef(i)
        arrRef(i) = ""
        ptr = ptr + 1
    end if
    if arrRef(i) <> "" and arrRef(ptr) <> "" then
        ptr = ptr + 1
    end if
next

' skaler array'et efter indholdet
redim preserve arrRef(maxRef)

' gem data tilbage i filen
set strmRef = fso.OpenTextFile("pdflist.txt",2,true)
strmRef.Write(Join(arrRef, vbCrLf))
strmRef.Close

set fso = nothing
Avatar billede mhp_dk Nybegynder
07. september 2005 - 08:23 #3
Det virker perfekt, gi et svar og du får points.
Tak for hjælpen.
Avatar billede softspot Forsker
07. september 2005 - 09:06 #4
Velbekomme :)
Avatar billede mhp_dk Nybegynder
07. september 2005 - 09:10 #5
.
Avatar billede softspot Forsker
07. september 2005 - 09:20 #6
Har du problemer med at give point? :)
Avatar billede mhp_dk Nybegynder
07. september 2005 - 09:39 #7
Yep :o)
Avatar billede softspot Forsker
07. september 2005 - 11:54 #8
Jeg har ikke selv den store efaring med at give point, men det var ude til venstre der var en mulighed for at vælge den eller dem der skal have point og acceptere...
Avatar billede mhp_dk Nybegynder
07. september 2005 - 11:57 #9
Ok, var ikke lige opmærksom på at man skal vælge når der kun er en...
Avatar billede softspot Forsker
07. september 2005 - 12:06 #10
Godt du fandt ud af det - tak for point :)
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