English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
C# offre le seguenti classi per il file system. Possono essere utilizzate per accedere alle directory, accedere ai file, aprire file per leggere o scrivere, creare nuovi file o spostare file esistenti da una posizione all'altra, ecc.
Nome della classe | Uso |
---|---|
File | La classe File è una classe statica che fornisce diverse funzioni, come copia, creazione, spostamento, eliminazione, apertura per lettura o scrittura, cifratura o decifratura, verifica dell'esistenza del file, aggiunta di righe o testo nel contenuto del file, ottenere l'ora dell'ultimo accesso, ecc. |
FileInfo | La classe FileInfo fornisce le stesse funzioni della classe statica File. Attraverso la scrittura manuale del codice utilizzato per leggere o scrivere byte dal file, è possibile controllare meglio le operazioni di lettura/scrittura del file. |
Directory | Directory è una classe statica che fornisce funzioni come creare, spostare, eliminare e accedere ai sottodirectory. |
DirectoryInfo | DirectoryInfo fornisce metodi di istanza utilizzati per creare, spostare, eliminare e accedere ai sottodirectory. |
Path | Path è una classe statica che fornisce alcune funzioni, come ottenere l'estensione del file, cambiare l'estensione del file, ottenere il percorso fisico assoluto e altre funzioni relative ai percorsi. |
C# include la classe statica File per eseguire operazioni di i/o sul file system fisico. La classe file statica include vari metodi utili che possono interagire con qualsiasi tipo di file fisico (come file binari, file di testo, ecc.).
Utilizza la classe statica File per eseguire alcune operazioni rapide sui file fisici. A causa delle ragioni di prestazioni, non si consiglia di utilizzare la classe File per più operazioni su più file. In questo caso, utilizzare la classe FileInfo.
Metodo | Uso |
---|---|
AppendAllLines | Aggiungi una riga al file e chiudi il file. Se il file specificato non esiste, questo metodo crea un file, scrive la riga specificata nel file e chiude il file. |
AppendAllText | Apri un file, aggiungi la stringa specificata al file e chiudi il file. Se il file non esiste, questo metodo crea un file, scrive la stringa specificata nel file e chiude il file. |
AppendText | Crea uno StreamWriter che aggiunge il testo codificato in UTF-8 a un file esistente, o a un nuovo file se il file specificato non esiste. |
Copy | Copia il file esistente in un nuovo file. Non è possibile sovrascrivere file con lo stesso nome. |
Create | Crea o sovrascrive il file specificato nel percorso specificato. |
CreateText | Crea o apri un file utilizzato per scrivere testi codificati in UTF-8. |
Decifra | Decifra il file cifrato utilizzando il metodo Encrypt del conto corrente. |
Elimina | Elimina il file specificato. |
Cifra | Cifra il file in modo che solo l'account utilizzato per cifrare il file possa decifrare il file. |
Esiste | Determina se il file specificato esiste. |
GetAccessControl | Ottieni un oggetto FileSecurity che encapsula le voci della lista di controllo degli accessi (ACL) del file specifico. |
Move | Sposta un file in una nuova posizione e fornisce l'opzione di un nuovo nome di file specifico. |
Open | Apri un FileStream su un percorso specifico con accesso in lettura/scrittura. |
ReadAllBytes | Apri un file binario, leggi il contenuto del file in un array di byte e chiudi il file. |
ReadAllLines | Apri un file di testo, leggi tutte le righe del file e chiudi il file. |
ReadAllText | Apri un file di testo, leggi tutte le righe del file e chiudi il file. |
Replace | Sostituisci il contenuto di un altro file con il contenuto di un file specifico, elimina il file originale e crea una copia di backup del file sostituito. |
WriteAllBytes | Crea un nuovo file, scrivi un array di byte specifico nel file e chiudi il file. Se il file di destinazione esiste già, lo sovrascrive. |
WriteAllLines | Crea un nuovo file, scrivi una raccolta di stringhe nel file e chiudi il file. |
WriteAllText | Crea un nuovo file, scrivi una stringa specifica nel file e chiudi il file. Se il file di destinazione esiste già, lo sovrascrive. |
Usa il metodo AppendAllLines() per aggiungere testo multiriga a un file specifico, come mostrato di seguito.
string dummyLines = "This is first line." + Environment.NewLine + "This is second line." + Environment.NewLine + "This is third line."; //Apri DummyFile.txt e aggiungi righe. Se il file non esiste, crea e apri. File.AppendAllLines(@"C:\DummyFile.txt", dummyLines.Split(Environment.NewLine.ToCharArray()).ToList<string>());
Usa il metodo File.AppendAllText () per aggiungere una stringa a una riga di codice in un file, come mostrato di seguito.
//Apri DummyFile.txt e aggiungi il testo. Se il file non esiste, crea e apri. File.AppendAllText(@"C:\ DummyFile.txt", "This is File testing");
UtilizzareFile.WriteAllText()Il metodo scrive il testo nel file. Nota che non aggiunge testo, ma sovrascrive il testo esistente.
Esempio: sovrascrivere testo esistente
//Aprire DummyFile.txt e scrivere il testo. Se il file non esiste, viene creato e aperto. File.WriteAllText(@"C:\DummyFile.txt", "This is dummy text");
Di seguito è riportato un esempio di come utilizzare la classe statica File per eseguire diverse operazioni.
//Controllare se il file esiste in una posizione specifica bool isFileExists = File.Exists(@"C:\ DummyFile.txt"); //Restituisce falso //Copiare DummyFile.txt in un nuovo file DummyFileNew.txt File.Copy(@"C:\DummyFile.txt", @"D:\NewDummyFile.txt"); //Ottieni l'ora dell'ultimo accesso al file DateTime lastAccessTime = File.GetLastAccessTime(@"C:\DummyFile.txt"); //Ottieni l'ora dell'ultima scrittura del file DateTime lastWriteTime = File.GetLastWriteTime(@"C:\DummyFile.txt"); //Spostare il file a una nuova posizione File.Move(@"C:\DummyFile.txt", @"D:\DummyFile.txt"); //Aprire il file e restituire FileStream per leggere byte dal file FileStream fs = File.Open(@"D:\DummyFile.txt", FileMode.OpenOrCreate); //Aprire il file e restituire StreamReader per leggere stringhe dal file StreamReader sr = File.OpenText(@"D:\DummyFile.txt"); //Eliminare il file File.Delete(@"C:\DummyFile.txt");
È facile gestire i file fisici utilizzando la classe statica File. Tuttavia, se desideri maggiore flessibilità, puoi utilizzare la classe FileInfo. Allo stesso modo, puoi gestire le directory fisiche utilizzando la classe Directory.
File è una classe statica, che può leggere\scrivere file fisici con meno codice.
La classe File statica offre funzionalità come creare, leggere\scrivere, copiare, spostare, eliminare file fisici.
La classe Directory statica offre funzionalità come creare, copiare, spostare, eliminare directory fisiche con meno codice.
Le classi FileInfo e DirectoryInfo offrono le stesse funzionalità delle classi statiche File e Directory.