Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O ReadAllText método do My.Computer.FileSystem objeto permite que você leia a partir de um arquivo de texto. A codificação do arquivo pode ser especificada se o conteúdo do arquivo usar uma codificação como ASCII ou UTF-8.
Se você estiver lendo a partir de um arquivo com caracteres estendidos, precisará especificar a codificação do arquivo.
Observação
Para ler um ficheiro uma linha de texto de cada vez, use o método OpenTextFileReader do objeto My.Computer.FileSystem. O método OpenTextFileReaderdevolve um objeto StreamReader. Você pode usar o ReadLine método do StreamReader objeto para ler um arquivo uma linha de cada vez. Você pode testar o final do arquivo usando o EndOfStream método do StreamReader objeto.
Para ler a partir de um ficheiro de texto
Use o método ReadAllText do objeto My.Computer.FileSystem para ler o conteúdo de um ficheiro de texto numa cadeia de caracteres, especificando o caminho. O exemplo a seguir lê o conteúdo de test.txt em uma cadeia de caracteres e o exibe em uma caixa de mensagem.
Dim fileReader As String
fileReader = My.Computer.FileSystem.ReadAllText("test.txt")
MsgBox(fileReader)
Para ler a partir de um ficheiro de texto codificado
Use o método ReadAllText do objeto My.Computer.FileSystem para ler o conteúdo de um ficheiro de texto para uma string, fornecendo o caminho e o tipo de codificação do ficheiro. O exemplo a seguir lê o conteúdo do arquivo UTF32 test.txt em uma cadeia de caracteres e, em seguida, o exibe em uma caixa de mensagem.
Dim fileReader As String
fileReader = My.Computer.FileSystem.ReadAllText("test.txt",
System.Text.Encoding.UTF32)
MsgBox(fileReader)
Para ler de um arquivo de texto em um controle RichTextBox
Para carregar o conteúdo de um arquivo de texto diretamente em um controle RichTextBox, leia o conteúdo do arquivo em uma cadeia de caracteres e atribua-o Text à propriedade do RichTextBox. O exemplo a seguir mostra como ler um arquivo de texto e carregá-lo em um controle RichTextBox.
' Load text file into a RichTextBox control
' Note: This assumes RichTextBox1 is a control on your form
Dim fileText As String
fileText = My.Computer.FileSystem.ReadAllText("test.txt")
' RichTextBox1.Text = fileText
Para um melhor tratamento de erros e gerenciamento de caminho de arquivo, você pode usar a seguinte abordagem que constrói um caminho de arquivo adequado e lida com possíveis exceções. Essa abordagem evita caminhos de unidade codificados que podem causar problemas em sistemas diferentes:
' Load text file into a RichTextBox control using a specific path
Try
Dim filePath As String = System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "test.txt")
Dim fileText As String = My.Computer.FileSystem.ReadAllText(filePath)
' RichTextBox1.Text = fileText
Catch ex As System.IO.FileNotFoundException
MsgBox("File not found: " & ex.Message)
Catch ex As Exception
MsgBox("Error reading file: " & ex.Message)
End Try
Observação
Ao especificar caminhos de arquivo, evite usar caminhos absolutos codificados como "C:\temp\file.txt", pois eles podem causar problemas em sistemas onde a letra da unidade ou a estrutura de diretórios é diferente. Em vez disso, use caminhos relativos ou construa caminhos usando Combine para garantir que seu código funcione em ambientes diferentes.
Programação robusta
As seguintes condições podem causar uma exceção:
O caminho não é válido por um dos seguintes motivos: é uma cadeia de caracteres de comprimento zero, contém apenas espaço em branco, contém caracteres inválidos ou é um caminho de dispositivo (ArgumentException).
O caminho não é válido porque é
Nothing(ArgumentNullException).O ficheiro não existe (FileNotFoundException).
O arquivo está em uso por outro processo ou ocorre um erro de E/S (IOException).
O caminho excede o comprimento máximo definido pelo sistema (PathTooLongException).
Um nome de arquivo ou diretório no caminho contém dois pontos (:) ou está em um formato inválido (NotSupportedException).
Não há memória suficiente para gravar a cadeia de caracteres no buffer (OutOfMemoryException).
O usuário não tem as permissões necessárias para visualizar o caminho (SecurityException).
Não tome decisões sobre o conteúdo do arquivo com base no nome do arquivo. Por exemplo, o arquivo Form1.vb pode não ser um arquivo de origem do Visual Basic.
Verifique todas as entradas antes de usar os dados em seu aplicativo. O conteúdo do arquivo pode não ser o esperado e os métodos para ler o arquivo podem falhar.
Ver também
- FileSystem
- ReadAllText
- Leitura de arquivos
- Como Ler Arquivos de Texto Comma-Delimited
- Como: Ler a partir de arquivos de texto de largura fixa
- Como: Ler a partir de arquivos de texto com vários formatos
- Resolução de problemas: Ler e escrever em ficheiros de texto
- Passo a passo: Manipulando arquivos e diretórios no Visual Basic
- Codificações de arquivo