Total de visitas: 65967
Manuseio de Arquivos
ARQUIVOS
Se você está cansado de procurar por toda a internet e não encontrar nada que fale sobre manuseio de arquivos. Amigo, aqui há dicas legais de como manipular arquivos.
Textos
EXIBE O CONTEÚDO DE UM ARQUIVO DE TEXTO
Private Sub abrearquivo()
If Me.OpenFile.ShowDialog() = DialogResult.OK Then
Dim fs As New FileStream(OpenFile.FileName, FileMode.Open, FileAccess.Read)
Dim m_streamReader As New StreamReader(fs)
' Lê o arquivo usando a classe StreamReader
m_streamReader.BaseStream.Seek(0, SeekOrigin.Begin)
' Lê cada linha do stream até a última
Me.box.Text = ""
Dim strLine As String = m_streamReader.ReadLine()
While Not (strLine Is Nothing)
Me.box.Text += strLine + ControlChars.Lf
strLine = m_streamReader.ReadLine()
End While
' Fecha o stream
m_streamReader.Close()
End If
End Sub
Abrir direto
Para arquivos salvos com o formato RichText em um objeto Richtext basta:
BOX.LoadFile("caminho.rtf")
Onde BOX é a caixa de texto Richtext e caminho.rtf é o caminho onde o arquivo está.
EXIBE O CONTEÚDO DE UM ARQUIVO DE TEXTO
Private Sub abre()
Dim doc As String
doc = "C:TESTES este.doc"
'Cria um objeto FileStream que faz a conexão com o aruqivo e determina como o arquivo será aberto.
Dim FStream As New System.IO.FileStream(doc, IO.FileMode.Open)
'Cria um objeto StreamReader para o FileStream ler do arquivo.
Dim SReader As New System.IO.StreamReader(FStream)
'Le o conteúdo do aruivo no editor.
box.Text = SReader.ReadToEnd()
'Fecha StreamReader e FileStream.
SReader.Close()
FStream.Close()
'Destroi os objetos StreamReader e FileStream
SReader = Nothing
FStream = Nothing
End Sub
Se você precisa carregar um documento do Word, salvo em .DOC mesmo, o que pode ser feito é carregar o texto em um objeto Word.Application, desta forma:
Dim wordApp As New Word.Application
wordApp.Documents.Open("C:TESTESTeste.doc")
wordApp.Selection.WholeStory()
wordApp.Selection.Copy()
RichTextBox1.Paste()
wordApp.Quit()
wordApp = Nothing
OBS.: Não esqueça que para isso você precisa adicionar uma referência ao seu projeto para a biblioteca Microsoft.Office.Interop.Word
Abre um arquivo do word
1. Vá ao nome do projeto na janela Solution Explorer, clique com o botão direito do mouse e vá em Add Reference, depois clique na guia COM da janela Add Reference e selecione a opção : Microsoft Word 11.0 Object Library
2. O modo como você vai obter o nome do arquivo possui várias opções o código de qualquer maneira para abrir o arquivo é é:
Dim objWord As Object
Dim caminho As String = txtcaminho.Text
objWord = CreateObject("Word.Application")
'Abre o documento aviso.doc do Microsoft Word.
objWord.Documents.Open(caminho)
objWord.visible = True
3. Para fechar é:
Dim objWord As Object
objWord = CreateObject("Word.Application")
objWord.Quit()
4. Os códigos deveráo ser alocados em um evento ou botão.
Diretórios
Cria
If TextBox1.Text <> "" Then
Directory.CreateDirectory(TextBox1.Text)
MessageBox.Show("O diretório <<" & TextBox1.Text & ">> foi cria com sucesso !!", "VB.NET - Criando Diretórios", MessageBoxButtons.OK, MessageBoxIcon.Information)
Else
MessageBox.Show("Informe o caminho e nome do diretorio que deseja Criar !", "VB.NET - Criando Diretórios", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End If
Exclui
If TextBox1.Text <> "" Then
If Directory.Exists(TextBox1.Text) Then
Directory.Delete(TextBox1.Text)
MessageBox.Show("O diretório <<" & TextBox1.Text & ">> foi excluida com sucesso !!", "VB.NET - Criando Diretórios", MessageBoxButtons.OK, MessageBoxIcon.Information)
Else
MessageBox.Show("O diretório <<" & TextBox1.Text & ">> não existe, Verifique !!", "VB.NET - Criando Diretórios", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
Else
MessageBox.Show("Informe o caminho e nome do diretorio que deseja Excluir !", "VB.NET - Criando Diretórios", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End If
Exibe arquivos
Dim nomearq As String
Dim subdir As String
If TextBox1.Text <> "" Then
Dim msg, titulo, valor As String
Dim objValor As Object
msg = "Informe a extensão do arquivo.Exemplo: *.exe "
titulo = "Listar arquivos" ' define o titulo.
valor = "*.exe" ' define o valor padrao
' Exibe mensagem posicionada
objValor = InputBox(msg, titulo, valor, 200, 200)
Me.ListBox1.Items.Clear()
Me.ListBox1.Items.Add(New String(TextBox1.Text))
For Each nomearq In Directory.GetFiles(TextBox1.Text, objValor)
Me.ListBox1.Items.Add(New String(nomearq))
Next
Else
MessageBox.Show("Informe o caminho/nome do diretorio para Listar!", "VB.NET - Criando Diretórios", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End If
Ou então
' exibe todos os arquivos em uma pasta especifica
If Not TextBox1.Text = String.Empty Or Not TextBox2.Text = String.Empty Then
For Each nome As String In Directory.GetFiles(TextBox1.Text, TextBox2.Text)
lstdiretorios.Items.Clear()
lstdiretorios.Items.Add(nome)
Next
Mais fácil de todos (para VB 2005 em diante)
For Each arquivo As String In Directory.GetFiles(TextBox1.Text, "*.*", SearchOption.AllDirectories)
lstdiretorios.Items.Add((arquivo))
Next
Exibe atributos de um arquivo
Dim nomearq As String
If TextBox1.Text <> "" Then
If File.Exists(TextBox1.Text) Then
Dim fvi As FileVersionInfo = FileVersionInfo.GetVersionInfo(TextBox1.Text)
Me.ListBox1.Items.Clear()
Me.ListBox1.Items.Add(New String(TextBox1.Text))
Me.ListBox1.Items.Add(New String("Data da criação : " & File.GetCreationTime(TextBox1.Text)))
Me.ListBox1.Items.Add(New String("Último acesso : " & File.GetLastAccessTime(TextBox1.Text)))
Me.ListBox1.Items.Add(New String("Última alteração : " & File.GetLastWriteTime(TextBox1.Text)))
Me.ListBox1.Items.Add(New String("Nome da Empresa : " & fvi.CompanyName))
Me.ListBox1.Items.Add(New String("Versão : " & fvi.FileVersion))
Me.ListBox1.Items.Add(New String("Descrição : " & fvi.FileDescription))
Else
MessageBox.Show("O Arquivo/diretório <<" & TextBox1.Text & ">> não existe, Verifique !!",
"VB.NET - Criando Diretórios", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
Else
MessageBox.Show("Informe o caminho e nome do diretorio para exibir atributos !",
"VB.NET - Criando Diretórios", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End If
Não se esqueça de agradecer recomendando o Blog.
jacob samuel