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

Costruttore FileStream (String, FileMode)

 

Data di pubblicazione: ottobre 2016

Inizializza una nuova istanza della classe FileStream con il percorso e la modalità di creazione specificati.

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

public FileStream(
	string path,
	FileMode mode
)

Parametri

path
Type: System.String

Percorso relativo o assoluto per il file che sarà incapsulato dall'oggetto FileStream corrente.

mode
Type: System.IO.FileMode

Costante che determina la modalità di apertura o di creazione del file.

Exception Condition
ArgumentException

path è una stringa vuota (""), contiene solo spazi vuoti oppure contiene uno o più caratteri non validi.

-oppure-

path fa riferimento a dispositivi non basati su file come "con:", "com1:", "lpt1:" e così via in un ambiente NTFS.

NotSupportedException

path fa riferimento a dispositivi non basati su file come "con:", "com1:", "lpt1:" e così via in un ambiente non NTFS.

ArgumentNullException

path è null.

SecurityException

Il chiamante non dispone dell'autorizzazione richiesta.

FileNotFoundException

Il file non è stato trovato, ad esempio quando mode è FileMode.Truncate o FileMode.Open e il file specificato da path non esiste. È necessario che il file sia già disponibile in queste modalità.

IOException

Si è verificato un errore di I/O, come nel caso in cui si specifica FileMode.CreateNew e il file specificato da path è già presente.

-oppure-

Il flusso è stato chiuso.

DirectoryNotFoundException

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

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 contenere meno di 248 caratteri e i nomi file meno di 260 caratteri.

ArgumentOutOfRangeException

mode contiene un valore non valido.

.NET Framework non supporta l'accesso diretto ai dischi fisici attraverso percorsi costituiti da nomi di dispositivo, ad esempio "\\.\PHYSICALDRIVE0".

Il path parametro può essere un nome di file, incluso un file in una condivisione UNC Universal Naming Convention ().

Il costruttore viene consentito l'accesso in lettura/scrittura al file, viene aperto condividendo l'accesso in lettura (vale a dire le richieste di apertura del file per la scrittura da questo o da un altro processo avrà esito negativo fino a quando il FileStream oggetto è stato chiuso, ma i tentativi di lettura avranno esito positivo).

È possibile utilizzare questo costruttore per aprire i file di sola lettura; In alternativa, è necessario utilizzare un costruttore che accetta un FileAccess parametro con il valore impostato su FileAccess.Read.

La dimensione del buffer è impostata per le dimensioni predefinite di 4096 byte (4 KB).

System_CAPS_noteNota

path non è necessario essere un file archiviato su disco. può trattarsi di qualsiasi parte di un sistema che supporta l'accesso attraverso i flussi. Ad esempio, a seconda del sistema, questa classe può accedere a un dispositivo fisico.

CanSeek è true per tutti FileStream gli oggetti che incapsulano i file. Se path indica un dispositivo che non supporta la ricerca, la CanSeek proprietà dell'oggetto risultante FileStream è false. Per altre informazioni, vedere CanSeek.

FileShare.Read è il valore predefinito per quelli FileStream costruttori senza un FileShare parametro.

Per i costruttori senza un FileAccess parametro, se il mode parametro è impostato su Append, Write è l'accesso predefinito. In caso contrario, l'accesso è impostato su ReadWrite.

System_CAPS_cautionAttenzione

Quando si compila un set di caratteri con una lingua specifica e si recuperano gli stessi caratteri con una lingua diversa, i caratteri potrebbero non essere interpretati e potrebbero generare un'eccezione viene generata.

Per un elenco di operazioni di directory e file comuni, vedere Attività di I/O comuni.

Esempio di codice seguente viene illustrato come scrivere i dati in un file, byte per byte e quindi verificare che i dati vengano scritti correttamente.

using System;
using System.IO;

class FStream
{
    static void Main()
    {
        const string fileName = "Test#@@#.dat";

        // Create random data to write to the file.
        byte[] dataArray = new byte[100000];
        new Random().NextBytes(dataArray);

        using(FileStream  
            fileStream = new FileStream(fileName, FileMode.Create))
        {
            // Write the data to the file, byte by byte.
            for(int i = 0; i < dataArray.Length; i++)
            {
                fileStream.WriteByte(dataArray[i]);
            }

            // Set the stream position to the beginning of the file.
            fileStream.Seek(0, SeekOrigin.Begin);

            // Read and verify the data.
            for(int i = 0; i < fileStream.Length; i++)
            {
                if(dataArray[i] != fileStream.ReadByte())
                {
                    Console.WriteLine("Error writing data.");
                    return;
                }
            }
            Console.WriteLine("The data was written to {0} " +
                "and verified.", fileStream.Name);
        }
    }
}

FileIOPermission

for reading, writing, and appending to files. Associated enumerations: F:System.Security.Permissions.FileIOPermissionAccess.Read, F:System.Security.Permissions.FileIOPermissionAccess.Write, and F:System.Security.Permissions.FileIOPermissionAccess.Append.

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: