[VB 2008] Ricerca file

lunedì 16 febbraio 2015 - 16.18

mdnet Profilo | Newbie

Ciao a tutti.
Dovrei creare una funzione che mi cerchi in tutte le unità del PC un determinato file e quando lo trova mi restituisca anche il percorso completo di dove si trova.

Grazie a chiunque abbia voglia di dare dei consigli ad un quasi neofita di VB.net

Davide1986 Profilo | Junior Member

Prova a vedere se questo ti può aiutare http://www.tipsntracks.com/142/browsing-files-in-a-folder-using-vbnet.html

Saluti Davide
Blog ImaginSystems
http://blogs.dotnethell.it/imaginsystems
http://www.imaginsystems.it
http://www.alpacasrl.it

mdnet Profilo | Newbie

Grazie, ma da quello che ho visto qui devi assegnare il percorso.
Io invece conosco perfettamente il nome del file e la sua estensione e ne dovrei ricavare il path di dove si trova

Davide1986 Profilo | Junior Member

Ho verificato e funziona :

Imports System.IO ''' <summary> ''' This class contains directory helper method(s). ''' </summary> Public Class Main Dim lstFilesFound As List(Of String) = New List(Of String) Dim elementoRicerca As String = vbNullString Private Sub Main_Load(sender As Object, e As EventArgs) Handles MyBase.Load elementoRicerca = "DemoFatturaPA.xml" 'ProcessDir("C:\", elementoRicerca) End Sub Public Sub ProcessDir(ByVal Dir As String, Optional ByVal elementoRicerca As String = "") Try ' Processa la lista dei files trovati nella directory passata Dim fileEntries As String() = Directory.GetFiles(Dir) For Each fileName As String In fileEntries If (fileName.Contains(elementoRicerca) Or elementoRicerca = "") Then ProcessFile(fileName) End If Application.DoEvents() Next ' Processa tutte le directory trovate nella directory passata alla funzione Dim subdirectoryEntries As String() = Directory.GetDirectories(Dir) For Each subdirectory As String In subdirectoryEntries ProcessDir(subdirectory, elementoRicerca) Application.DoEvents() Next Catch UAEx As UnauthorizedAccessException Console.WriteLine(UAEx.Message) Catch PathEx As PathTooLongException Console.WriteLine(PathEx.Message) End Try End Sub Public Sub ProcessFile(ByVal FilePath As String) ' processa il file ' possiamo recuperare varie informazioni sul file tramite FileInfo ' ed eventualmente inserire qui altre routine di controllo, in questo ' codice ci limitiamo soltanto ad elencare tutti i files con le sottodirectory ' Dim InfoFile As New FileInfo(FilePath) lstFilesFound.Add(FilePath) ' aggiungo il file esaminato ora alla lista End Sub End Class
Blog ImaginSystems
http://blogs.dotnethell.it/imaginsystems
http://www.imaginsystems.it
http://www.alpacasrl.it
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5