FileSystem.FileOpen Metodo

Definizione

Apre un file per l'input o l'output. La My funzionalità offre una maggiore produttività e prestazioni nelle operazioni di I/O dei file rispetto a FileOpen. Per altre informazioni, vedere FileSystem.

public static void FileOpen(int FileNumber, string FileName, Microsoft.VisualBasic.OpenMode Mode, Microsoft.VisualBasic.OpenAccess Access = Microsoft.VisualBasic.OpenAccess.Default, Microsoft.VisualBasic.OpenShare Share = Microsoft.VisualBasic.OpenShare.Default, int RecordLength = -1);
static member FileOpen : int * string * Microsoft.VisualBasic.OpenMode * Microsoft.VisualBasic.OpenAccess * Microsoft.VisualBasic.OpenShare * int -> unit
Public Sub FileOpen (FileNumber As Integer, FileName As String, Mode As OpenMode, Optional Access As OpenAccess = Microsoft.VisualBasic.OpenAccess.Default, Optional Share As OpenShare = Microsoft.VisualBasic.OpenShare.Default, Optional RecordLength As Integer = -1)

Parametri

FileNumber
Int32

Required. Qualsiasi numero di file valido. Usare la FreeFile funzione per ottenere il numero di file disponibile successivo.

FileName
String

Required. Espressione stringa che specifica un nome di file, che può includere directory o cartella e unità.

Mode
OpenMode

Required. Enumerazione che specifica la modalità file: Append, Binary, Input, Outputo Random. Per altre informazioni, vedere OpenMode.

Access
OpenAccess

Optional. Enumerazione che specifica le operazioni consentite nel file aperto: Read, Writeo ReadWrite. Di default è ReadWrite. Per altre informazioni, vedere OpenAccess.

Share
OpenShare

Optional. Enumerazione che specifica le operazioni non consentite nel file aperto da altri processi: Shared, Lock Read, Lock Writee Lock Read Write. Di default è Lock Read Write. Per altre informazioni, vedere OpenShare.

RecordLength
Int32

Optional. Numero minore o uguale a 32.767 (byte). Per i file aperti per l'accesso casuale, questo valore è la lunghezza del record. Per i file sequenziali, questo valore è il numero di caratteri memorizzati nel buffer.

Eccezioni

La lunghezza del record è negativa (e non uguale a -1).

FileName è già aperto o FileName non è valido.

Esempio

In questo esempio vengono illustrati vari usi della FileOpen funzione per abilitare l'input e l'output in un file.

Il codice seguente apre il file TestFile in Input modalità .

FileOpen(1, "TESTFILE", OpenMode.Input)
' Close before reopening in another mode.
FileClose(1)

In questo esempio viene aperto il file in Binary modalità solo per le operazioni di scrittura.

FileOpen(1, "TESTFILE", OpenMode.Binary, OpenAccess.Write)
' Close before reopening in another mode.
FileClose(1)

Nell'esempio seguente viene aperto il file in Random modalità . Il file contiene record della struttura Person.

Structure Person
    <VBFixedString(30)> Dim Name As String
    Dim ID As Integer
End Structure
Public Sub ExampleMethod()
    ' Count 30 for the string, plus 4 for the integer.
    FileOpen(1, "TESTFILE", OpenMode.Random, , , 34)
    ' Close before reopening in another mode.
    FileClose(1)
End Sub

Questo esempio di codice apre il file in Output modalità; qualsiasi processo può leggere o scrivere nel file.

FileOpen(1, "TESTFILE", OpenMode.Output, OpenAccess.Default, OpenShare.Shared)
' Close before reopening in another mode.
FileClose(1)

In questo esempio di codice viene aperto il file in Binary modalità di lettura. Altri processi non possono leggere il file.

FileOpen(1, "TESTFILE", OpenMode.Binary, OpenAccess.Read,
   OpenShare.LockRead)

Commenti

La FileOpen funzione viene fornita per la compatibilità con le versioni precedenti e può influire sulle prestazioni. Per le applicazioni non legacy, l'oggetto My.Computer.FileSystem offre prestazioni migliori. Per altre informazioni, vedere File Access con Visual Basic.

È necessario aprire un file prima di poter eseguire qualsiasi operazione di I/O. FileOpen alloca un buffer per l'I/O al file e determina la modalità di accesso da usare con il buffer.

Importante

Quando si scrive in un file, un'applicazione potrebbe dover creare un file, se il file in cui sta tentando di scrivere non esiste. A tale scopo, è necessaria l'autorizzazione per la directory in cui creare il file. Tuttavia, se il file specificato da FileName esiste, l'applicazione deve disporre Write dell'autorizzazione solo per il file stesso. Se possibile, per migliorare la sicurezza, creare il file durante la distribuzione e concedere Write l'autorizzazione solo a tale file anziché all'intera directory. Per migliorare la sicurezza, scrivere i dati nelle directory utente anziché nella directory radice o nella directory Programmi.

Il canale da aprire può essere trovato usando la FreeFile() funzione .

Importante

La FileOpen funzione richiede Read l'accesso dall'enumerazione , che può influire sull'esecuzione FileIOPermissionAccess in situazioni di attendibilità parziale. Per altre informazioni, vedere FileIOPermissionAccess enumerazione.

Si applica a

Vedi anche