Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Metodo Directory.GetFiles (String)

 

Data di pubblicazione: ottobre 2016

Restituisce i nomi dei file, inclusi i percorsi, nella directory specificata.

Spazio dei nomi:   System.IO
Assembly:  mscorlib (in mscorlib.dll)

public static string[] GetFiles(
	string path
)

Parametri

path
Type: System.String

Percorso relativo o assoluto della directory in cui eseguire la ricerca. Stringa senza distinzione tra maiuscole e minuscole.

Valore restituito

Type: System.String[]

Una matrice dei nomi completi (inclusi i percorsi) per i file nella directory specificata o una matrice vuota se non viene trovato alcun file.

Exception Condition
IOException

path è un nome file.

-oppure-

Si è verificato un errore di rete.

UnauthorizedAccessException

Il chiamante non dispone dell'autorizzazione richiesta.

ArgumentException

path è una stringa di lunghezza zero, contiene solo spazi vuoti oppure contiene uno o più caratteri non validi. È possibile cercare i caratteri non validi usando il metodo GetInvalidPathChars.

ArgumentNullException

path è null.

PathTooLongException

Il percorso specificato, il nome file o entrambi superano la lunghezza massima definita dal sistema. Ad esempio, nelle piattaforme basate su Windows, i percorsi devono avere meno di 248 caratteri e i nomi dei file devono avere meno di 260 caratteri.

DirectoryNotFoundException

Il percorso specificato non è stato trovato o non è valido, ad esempio si trova in un'unità non mappata.

Il EnumerateFiles e GetFiles metodi differiscono nel modo seguente: quando si utilizza EnumerateFiles, è possibile avviare l'enumerazione dell'insieme di nomi prima che venga restituito l'intero insieme, quando si utilizza GetFiles, è necessario attendere che l'intera matrice di nomi da restituire prima che sia possibile accedere alla matrice. Pertanto, quando si lavora con molti file e directory, EnumerateFiles può essere più efficiente.

Nomi di file restituiti vengono aggiunti per il parametro path parametro.

Questo metodo è identico a GetFiles(String, String) con l'asterisco (*) specificato come criterio di ricerca.

Il parametro path può specificare un percorso relativo o assoluto. L'informazione sul percorso relativo viene interpretata partendo dalla directory di lavoro corrente.
Per ottenere la directory di lavoro corrente, vedere GetCurrentDirectory.

L'ordine dei nomi di file restituito non è garantito. Utilizzare il Sort metodo se è necessario un ordinamento specifico.

Il parametro path non fa differenza tra caratteri maiuscoli e minuscoli.

Per un elenco delle attività di I/O comuni, vedere Attività di I/O comuni.

Nell'esempio seguente viene illustrato come utilizzare il GetFiles per restituire i nomi di file da un percorso specificato dall'utente. Nell'esempio è configurato per intercettare tutti gli errori comuni di questo metodo.

// For Directory.GetFiles and Directory.GetDirectories
// For File.Exists, Directory.Exists
using System;
using System.IO;
using System.Collections;

public class RecursiveFileProcessor 
{
    public static void Main(string[] args) 
    {
        foreach(string path in args) 
        {
            if(File.Exists(path)) 
            {
                // This path is a file
                ProcessFile(path); 
            }               
            else if(Directory.Exists(path)) 
            {
                // This path is a directory
                ProcessDirectory(path);
            }
            else 
            {
                Console.WriteLine("{0} is not a valid file or directory.", path);
            }        
        }        
    }


    // Process all files in the directory passed in, recurse on any directories 
    // that are found, and process the files they contain.
    public static void ProcessDirectory(string targetDirectory) 
    {
        // Process the list of files found in the directory.
        string [] fileEntries = Directory.GetFiles(targetDirectory);
        foreach(string fileName in fileEntries)
            ProcessFile(fileName);

        // Recurse into subdirectories of this directory.
        string [] subdirectoryEntries = Directory.GetDirectories(targetDirectory);
        foreach(string subdirectory in subdirectoryEntries)
            ProcessDirectory(subdirectory);
    }

    // Insert logic for processing found files here.
    public static void ProcessFile(string path) 
    {
        Console.WriteLine("Processed file '{0}'.", path);	    
    }
}

FileIOPermission

for access to path information for the current directory. Associated enumeration: F:System.Security.Permissions.FileIOPermissionAccess.PathDiscovery

Universal Windows Platform
Disponibile da 10
.NET Framework
Disponibile da 1.1
Silverlight
Disponibile da 2.0
Windows Phone Silverlight
Disponibile da 7.0
Torna all'inizio
Mostra: