Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di goku370
    Registrato dal
    Oct 2003
    Messaggi
    569

    [VB6] Verificare esistenza file con tipica estensione

    Per verificare l'esistenza di un file uso sempre il metodo FileExists....
    Ma ora dovrei verificare l'esistenza in una data cartella l'esistenza di file con una certa estensione, ad esempio. txt......
    Da notare che non conosco i nomi dei file, e che è proprio questo che dovrei trovare.... :master:
    Una tecnologia sufficientemente avanzata è indistinguibile dalla magia. Terza legge di Clarke

  2. #2
    Utente di HTML.it L'avatar di EngLab
    Registrato dal
    Jan 2006
    Messaggi
    496
    Mmm, mi sa che con il FileExist non puoi farlo. Il FileExist ti dà in ritorno un valore booleano, quindi anche se gli passassi *.txt, credo che ti darebbe un errore, oppure un valore true se esiste almeno un file con estensione txt... Non so, prova!!

  3. #3
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,752
    codice:
    if dir(tuacartella & "\*.txt")<>"" then
         :yuppi: 
    end if
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  4. #4
    Utente di HTML.it L'avatar di goku370
    Registrato dal
    Oct 2003
    Messaggi
    569
    Passando qualcosa del tipo *.txt al FileExists mi da sempre false...
    Usando la funzione Dir() mi viene restituito, se esiste, il nome di uno dei file con l'estensione ricercata... come posso ottenere l'elenco di tutti i file?
    Una tecnologia sufficientemente avanzata è indistinguibile dalla magia. Terza legge di Clarke

  5. #5
    Originariamente inviato da goku370
    Passando qualcosa del tipo *.txt al FileExists mi da sempre false...
    Usando la funzione Dir() mi viene restituito, se esiste, il nome di uno dei file con l'estensione ricercata... come posso ottenere l'elenco di tutti i file?
    Continuando a chiamare la funzione Dir() SENZA argomento, finche' non ti restituisce una stringa nulla.

    Ciao !
    IceCube_HT (VB6 fan Club)

  6. #6
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,752
    Originariamente inviato da goku370
    Passando qualcosa del tipo *.txt al FileExists mi da sempre false...
    Usando la funzione Dir() mi viene restituito, se esiste, il nome di uno dei file con l'estensione ricercata... come posso ottenere l'elenco di tutti i file?
    Avevo capito che ti serviva sapere se c'erano o no ( )

    codice:
    dim temp as string
    temp= dir(tuacartella & "\*.txt")
    do while temp<>"" 
        :yuppi:
        temp=dir() 
    loop
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  7. #7
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Ciao goku370,
    Ho predisposto la seguente routine che trova l'estensione del/dei files, ne scrive il peso ed il Nome in un'altra Cartella. Il codice può essere migliorato (ora non ho altro tempo disponibile) o comunque potrai trarne spunto per una diversa soluzione.
    Si ipotizza di cercare files con estensione .csv che potrai sostituire con quella da te indicata.
    codice:
    Private Sub Command1_Click()
    'Origine :
        Const Cartella = "D:\Prova\"
    'Destinazione :
        Const FileDest = "D:\Test\Lista.txt"
        Const NumSpazi = 70
        Dim FileName As String
        Dim ContFile As Long
        Dim ContFileX As Long
        Dim StrTemp As String
        Dim Ext As String
        
        FileName = Dir(Cartella, vbNormal + vbSystem + vbHidden + vbReadOnly)
        Open FileDest For Output As #1
            Print #1, "* File in "; Cartella; " :"; vbCrLf
                  Do Until Len(FileName) = 0
                    ' Qui devi inserire l'estensione del file da trovare:
                    Ext = InStrRev(FileName, ".csv", -1, vbTextCompare)
                        If Val(Ext) > 0 Then
                            StrTemp = CStr(FileLen(Cartella & FileName))
                            StrTemp = Space(NumSpazi - Len(StrTemp) - Len(FileName)) & StrTemp & " byte"
                        End If
                            If Val(Ext) > 0 Then
                                Print #1, FileName; StrTemp
                                FileName = Dir
                                ContFileX = ContFileX + 1
                            ElseIf Val(Ext) = 0 Then
                                FileName = "-- -- --"
                                Print #1, FileName; StrTemp
                                FileName = Dir
                                ContFile = ContFile + 1
                            End If
                    Loop
            Print #1, vbCrLf; "* Totale file nella cartella : " & CStr(ContFile + ContFileX) & "; " & " File trovati con estensione .csv " & CStr(ContFileX); "."
        Close #1
    End Sub
    Fammi sapere se ti funziona.
    LM

  8. #8
    Utente di HTML.it L'avatar di goku370
    Registrato dal
    Oct 2003
    Messaggi
    569
    Grazie infinite... Anche troppo....
    Una tecnologia sufficientemente avanzata è indistinguibile dalla magia. Terza legge di Clarke

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.