FileSystem.FileOpen Método

Definição

Abre um arquivo para entrada ou saída. O My recurso oferece melhor produtividade e desempenho em operações de E/S de arquivo do que FileOpen. Para obter mais informações, consulte 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)

Parâmetros

FileNumber
Int32

Required. Qualquer número de arquivo válido. Use a FreeFile função para obter o próximo número de arquivo disponível.

FileName
String

Required. Uma expressão de cadeia de caracteres que especifica um nome de arquivo – pode incluir diretório ou pasta e unidade.

Mode
OpenMode

Required. Enumeração especificando o modo de arquivo: Append, , Binary, Input, Outputou Random. Para obter mais informações, consulte OpenMode.

Access
OpenAccess

Optional. Enumeração que especifica as operações permitidas no arquivo aberto: Read, ou WriteReadWrite. Usa ReadWrite como padrão. Para obter mais informações, consulte OpenAccess.

Share
OpenShare

Optional. Enumeração que especifica as operações não permitidas no arquivo aberto por outros processos: Shared, , Lock Reade Lock WriteLock Read Write. Usa Lock Read Write como padrão. Para obter mais informações, consulte OpenShare.

RecordLength
Int32

Optional. É menor ou igual a 32.767 (bytes). Para arquivos abertos para acesso aleatório, esse valor é o comprimento do registro. Para arquivos sequenciais, esse valor é o número de caracteres armazenados em buffer.

Exceções

O comprimento do registro é negativo (e não é igual a -1).

FileName já está aberto ou FileName é inválido.

Exemplos

Este exemplo ilustra vários usos da função para habilitar a FileOpen entrada e a saída para um arquivo.

O código a seguir abre o arquivo TestFile no Input modo.

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

Este exemplo abre o arquivo no Binary modo somente para gravação de operações.

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

O exemplo a seguir abre o arquivo no Random modo. O arquivo contém registros da estrutura 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

Este exemplo de código abre o arquivo no modo; qualquer processo pode ler ou gravar no Output arquivo.

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

Este exemplo de código abre o arquivo no Binary modo de leitura; outros processos não podem ler o arquivo.

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

Comentários

A FileOpen função é fornecida para compatibilidade com versões anteriores e pode afetar o desempenho. Para aplicativos não herdados, o My.Computer.FileSystem objeto fornece melhor desempenho. Para obter mais informações, consulte File Access com Visual Basic.

Você deve abrir um arquivo antes que qualquer operação de E/S possa ser executada nele. FileOpen aloca um buffer de E/S para o arquivo e determina o modo de acesso a ser usado com o buffer.

Importante

Ao gravar em um arquivo, um aplicativo pode ter que criar um arquivo, se o arquivo no qual ele está tentando gravar não existir. Para fazer isso, ele precisa de permissão para o diretório no qual o arquivo deve ser criado. No entanto, se o arquivo especificado por FileName ele existir, o aplicativo precisará Write de permissão apenas para o próprio arquivo. Sempre que possível, para ajudar a melhorar a segurança, crie o arquivo durante a implantação e conceda Write permissão somente a esse arquivo, em vez de para todo o diretório. Para ajudar a melhorar a segurança, escreva dados em diretórios de usuário em vez de no diretório raiz ou no diretório Arquivos de Programas.

O canal a ser aberto pode ser encontrado usando a FreeFile() função.

Importante

A FileOpen função requer Read acesso da enumeração, o FileIOPermissionAccess que pode afetar sua execução em situações parciais de confiança. Para obter mais informações, consulte FileIOPermissionAccess enumeração.

Aplica-se a

Confira também