Ir para conteúdo
Fórum Script Brasil
  • 0

Filtrar texto (procurar dado, e eliminar)


Guest Bina

Pergunta

Olá,

Preciso criar um programa que busca nas linhas de um txt uma palavra. Se essa palavra for encontrada na linha a linha deve ser excluida do texto.

alguém pode me dar uma ajuda?

Desculpa se não fui claro :P

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

Googlei googlei e não consegui.

Eu quero fazer o seguinte:

Tem um texto assim (em um arquivo .txt)

Laranja estragado

Pera bom

Uva estragado

Maça podre

Abacate Bom

Ai quero salvar em outro arquivo ou num textbox o texto filtrado assim:

Pera bom

Abacate Bom

As frutas que tiverem Bom escrito no lado seja salva e o resto não vai para o arquivo novo.

Tem como fazer isso?

Link para o comentário
Compartilhar em outros sites

  • 0

Fiz uma função que fazia algo semelhante... lia todas as linhas e contava e guardava as informações no banco.

Talvez isso te ajude

Esta é a parte que varre todo o arquivo...

Dim strm As StreamReader = Nothing
 Dim intContLinha As Integer = 0
 Dim strLinha As String

'Abrir o arquivo pra leitura
 strm = New StreamReader(Server.MapPath("caminho do arquivo") )


 'Procedimento Importação
            While strm.Peek >= 0 'Lê arquivo enquanto not EOF
                intContLinha += 1

                strLinha = strm.ReadLine()
                'Faz o que você precisa....


                intTotalPin += 1
        End While
'Fecha o arquivo
 strm.Close()

Veja se você consegue, com esse while, fazer um tratamento das informações que você quer( no caso ve se a linha tem a palavra q você quer ). Se a linha tiver "BOM" ( como no seu exemplo) insira ela em um .txt novo (você já deve saber como cria e escreve em um arquivo)

Espero ter ajudado

=)

Editado por kuroi
Adicionar tag CODE
Link para o comentário
Compartilhar em outros sites

  • 0

nossa, conde w, isso ai q você passou é asp.net, não?? acho q ele ta tentando fazer no visual basic 6.

bina, de uma olhada nesse tutorial: http://www.macoratti.net/txt_arqs.htm

ele ensina tanto a ler quanto a escrever arquivos texto.

ai o esquema é abrir esse arquivo q você quer ler e simultanamente abrir um oturo onde você vai escrever.

ai cada linha q você for ler, você procura o texto q você quer com o InStr() e dependendo, você escreve a linha ou não.

qualquer duvida no codigo, poste ai.

Link para o comentário
Compartilhar em outros sites

  • 0

Vamos la:

Eu consegui usar o instr pra procurar um texto em uma string.. se ele achar o texto eu uso o replace como o Graymalkin falou la em cima. Agora a duvida é... como jogar cada linha do arquivo para uma string?

Obs; não sei mecher com vb.net

Obrigado ai cara... tem como da mas essa força to precisando muito disso..

Link para o comentário
Compartilhar em outros sites

  • 0

não, o replace era pra se usar se você quisesse só tirar uma palavra. pelo q entendi, você quer tirar a linha inteira, certo?? então, é so não escrever as linhas q você não quiser. tipo assim:

Dim f1 As Long, f2 As Long
Dim linha As String

f1 = FreeFile
Open "arquivo_leitura.txt" For Output As f1
f2 = FreeFile
Open "arquivo_gravacao.txt" For Output As f2

Do While Not EOF(f1)
    Line Input #f1, Linha

    If InStr(linha, "bom") >= 1 Then
        'Se achar copia, senao não
        Print f2, linha
    End If
Loop

Close #f1
Close #f2[/code]

Link para o comentário
Compartilhar em outros sites

  • 0

Cara brigadao ai pela ajuda... o codigo ai em cima não deu certo mas mudei umas coisas ai pego legal

Dim f1 As Long, f2 As Long
Dim linha As String
Dim arquivo As String


f1 = FreeFile
Open "C:/leitura.txt" For Input As f1

f2 = FreeFile
Open "C:/grava.txt" For Output As f2
Do While Not EOF(f1)
    
Input #f1, linha


arquivo = InStr(linha, "bom")

If arquivo = 1 Then

Print #f2, linha
End If
Loop


Close #f2
Close #f1

ta ai o modo que fiz :D

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...