none
Como preencher textboxs com arquivos texto simples (.txt) RRS feed

  • Pergunta

  • Boa Noite!

    Eu gostaria de saber como faço para preencher algumas textboxs com as informações contidas em um arquivo no formato .TXT.

    Assim, por exemplo eu crio no bloco de notas, uma nota que contem o texto abaixo:

    Nome: João

    Idade:23

    Data de nascimento: 12/07/1992

    O programa vai conter os seguintes componentes: BtnAbrir(button), TxtNome(textbox), TxtIdade(textbox), TxtNascimento(textbox)

    Então o usuário quando clicar no botão BtnAbrir ele abre uma OpenFileDialog o usuário escolhe o arquivo, ai o programa pega os dados contidos no arquivo e preenche as textbox correspondentes.

    Tem como?

    sexta-feira, 6 de junho de 2014 23:50

Respostas

  • Sim, você pode separar por linhas, exemplo:

    Arquivo em texto:

    João
    23
    12/07/1992

    E no script você define assim:

    TxtNome.text = linha 0

    TxtIdade.text = linha 1

    TxtNascimento.text = linha 2

    Isso em vb ficaria assim:

    No botão de abrir:

            OpenFileDialog1.ShowDialog()
            Dim oReader As String = OpenFileDialog1.FileName
            Dim doReader As String = My.Computer.FileSystem.ReadAllText(oReader)
    
            TextBox1.Text = doReader
    
            TxtNome.Text = TextBox1.Lines(0)
            TxtIdade.Text = TextBox1.Lines(1)
            TxtNascimento.Text = TextBox1.Lines(2)


    É isso, espero ter ajudado ;)


    sábado, 7 de junho de 2014 02:35

Todas as Respostas

  • Sim, você pode separar por linhas, exemplo:

    Arquivo em texto:

    João
    23
    12/07/1992

    E no script você define assim:

    TxtNome.text = linha 0

    TxtIdade.text = linha 1

    TxtNascimento.text = linha 2

    Isso em vb ficaria assim:

    No botão de abrir:

            OpenFileDialog1.ShowDialog()
            Dim oReader As String = OpenFileDialog1.FileName
            Dim doReader As String = My.Computer.FileSystem.ReadAllText(oReader)
    
            TextBox1.Text = doReader
    
            TxtNome.Text = TextBox1.Lines(0)
            TxtIdade.Text = TextBox1.Lines(1)
            TxtNascimento.Text = TextBox1.Lines(2)


    É isso, espero ter ajudado ;)


    sábado, 7 de junho de 2014 02:35
  • Obrigado EderTec!

    Era isso mesmo que eu estava precisando!

    Tenho mais uma duvida, se você sou me responder:

    Tem como criar um botão para todas as notas de uma determinada pasta, como se você um atalho!

    Por exemplo eu tenho a seguinte pasta: Bibliotecas\Documentos

    Ai toda vez que o programa for iniciado ele localiza na pasta citada acima todos os arquivos no formato .txt e cria um botão com a propriedade dock=Top para cada nota, e quando o usuário clicar em algum botão, ele abre a nota (no próprio bloco de notas).

    OBS: Cada botão criado tem que ficar com o conteúdo da nota na propriedade Text!

    Obrigado desde já!

    sábado, 7 de junho de 2014 14:34
  • Bom dia !

    A melhor solução para você é esse projeto aqui..

    Nele está incrementado todas as funções que você precisa.

    http://www.macoratti.net/vbn_txt.htm


    Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    sábado, 7 de junho de 2014 14:52
  • OK, primeiro você precisa salvar o caminho de uma pasta padrão, para isso você pode colocar o seguinte código na form_loader, para isso, de dois clique no form para abrir o form_loader, nele coloque isso:

    My.Computer.Registry.SetValue("HKEY_CURRENT_USER\Nome-do-seu-programa", "Pasta", "Caminho-da-pasta")

    Mas substitua os nomes "Nome-do-seu-programa" e "Caminho-da-pasta", e ficará mais ou menos assim:

    My.Computer.Registry.SetValue("HKEY_CURRENT_USER\Programa-de-Ver-Notas", "Pasta", "C:\Nostas")

    Mas para funcionar, essa pasta tem que existir, então ainda na form_loader, logo abaixo do código acima, cole isso para criar a pasta que você vai usar:

    If My.Computer.FileSystem.DirectoryExists("C:\Notas") = False Then
                My.Computer.FileSystem.CreateDirectory("C:\Notas")
    End If

    OBS: altere o nome "Notas" pelo que você usou no registro, mas caso não tenha alterado, deixe assim mesmo, o importante é que a pasta criada seja a mesma do registro..

    Agora para abrir a pasta, coloque esse código no botão de abrir:

    process.start (My.Computer.Registry.GetValue("HKEY_CURRENT_USER\Programa-de-Ver-Notas", "Pasta", Nothing))

    Para ler todos os arquivos em texto dentro da pasta, coloque:

    uma textbox com o nome de textboxler,

    uma combobox com o nome de comboboxler,

    um botão com o nome de botaoler,

    e uma botão com o nome de botaoatt.

    No script, antes de "Public Class Form1" cole isso:

    Imports System.IO
    Imports System.IO.Path

    dai, você da dois cliques novamente na forma para abrir a form_loader e cola isso:

    Dim pastadoregistro As String = My.Computer.Registry.GetValue("HKEY_CURRENT_USER\Programa-de-Ver-Notas", "Pasta", Nothing)
            Dim pastainicial As String = System.IO.Path.GetDirectoryName(pastadoregistro) & "\"
            Dim pastainfo As New IO.DirectoryInfo(pastainicial)
            For Each file As FileInfo In pastainfo.GetFiles("*.txt", SearchOption.TopDirectoryOnly)
                ComboBoxler.Items.Add(file.Name)
    Next

    cole esse mesmo código no botão "botaoatt"

    deixe a textboxler com a propriedade "multline = true" e deixe ela do tamanho que quiser.

    no botaoler, cole isso:

    On Error Resume Next
            Dim ler1 As String = ComboBoxler.text
            Dim ler2 As String = My.Computer.FileSystem.ReadAllText(ler1)
            TextBoxler.Text = ler2
    Resume Next

    OBS: Eu não testei esses código, talvez ele tenha algum bug.. qualquer coisa, fala cmg pelo face, e se estiver usando o vb 1012 ou inferior, me passa o projeto que eu faço isso pra vc e deixo alguns comentário no script pra ti mostrar como eu fiz.

    Meu face: https://www.facebook.com/renato.chagas2

    Espero ter sido útil, Boa sorte !!


    domingo, 8 de junho de 2014 01:41