Partilhar via


FileSystem.FileOpen Método

Definição

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

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

FileName
String

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

Mode
OpenMode

Obrigatórios. Enumeração especificando o modo de arquivo: Append, Binary, Input, Output ou Random. Para obter mais informações, consulte OpenMode.

Access
OpenAccess

Opcional. Enumeração especificando as operações permitidas no arquivo aberto: Read, Write ou ReadWrite. Assume o padrão de ReadWrite. Para obter mais informações, consulte OpenAccess.

Share
OpenShare

Opcional. Enumeração especificando as operações não permitidas no arquivo aberto: Shared, Lock Read, Lock Write ou Lock Read Write. Assume o padrão de Lock Read Write. Para obter mais informações, consulte OpenShare.

RecordLength
Int32

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

Exceções

tamanho 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 FileOpen função para habilitar a 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 saber mais informações, confira Acesso a Arquivos com o 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 existir, o aplicativo precisará Write apenas de permissão 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 de confiança parcial. Para obter mais informações, confira a enumeração FileIOPermissionAccess.

Aplica-se a

Confira também