IBM Lotus Symphony


Instrução Open [Runtime]

Abre um canal de dados.

Sintaxe:

Open FileName As String [For Mode] [Access IOMode] [Protected] As [#]FileNumber As Integer [Len = DatasetLength]

Parâmetros:

FileName: Nome e caminho do ficheiro que pretende abrir. Se pretender ler um ficheiro que não existe (Access = Read), é apresentada uma mensagem de erro. Se tentar gravar num ficheiro que não exista (Access = Write), é criado um novo ficheiro.

Mode: Palavra-chave que especifica o modo de ficheiro. Valores válidos: Append (acrescentar ao ficheiro sequencial), Binary (os dados podem ser acedidos por bytes utilizando Get e Put), Input (abre o canal de dados para leitura), Output (abre o canal de dados para gravação) e Random (permite a edição de ficheiros relativos).

IOMode: Palavra-chave que define o tipo de acesso. Valores válidos: Read (só de leitura), Write (só de gravação), Read Write (ambos).

Protected: Palavra-chave que define o estado de segurança de um ficheiro, após a abertura. Valores válidos: Shared (o ficheiro pode ser aberto por outras aplicações), Lock Read (o ficheiro está protegido contra leitura), Lock Write (o ficheiro está protegido contra gravação), Lock Read Write (não permite o acesso ao ficheiro).

FileNumber: Qualquer expressão de valor inteiro, entre 0 e 511, para indicar o número de um canal de dados gratuito. Em seguida, pode passar comandos através do canal de dados para aceder ao ficheiro. O número do ficheiro tem de ser determinado pela função FreeFile imediatamente antes da instrução Open.

DatasetLength: Para ficheiros de acesso aleatório, define o comprimento dos registos.

ícone de Nota Apenas é possível modificar o conteúdo de um ficheiro que foi aberto com a instrução Open. Se tentar abrir um ficheiro que já se encontre aberto, é apresentada uma mensagem de erro.

Exemplo:

Sub ExampleWorkWithAFile

Dim iNumber As Integer

Dim sLine As String

Dim aFile As String

Dim sMsg as String

aFile = "c:\data.txt"

iNumber = Freefile

Open aFile For Output As #iNumber

Print #iNumber, "This is a line of text"

Print #iNumber, "This is another line of text"

Close #iNumber

iNumber = Freefile

Open aFile For Input As iNumber

While not eof(iNumber)

Line Input #iNumber, sLine

If sLine <>"" then

sMsg = sMsg & sLine & chr(13)

end if

wend

Close #iNumber

Msgbox sMsg

End Sub


Comentários sobre o produto | Documentação adicional | Marcas comerciais