none
Leitura com StreamReader RRS feed

  • Pergunta

  • Sou novato no vb.net gostaria de fazer um código para pesquisa automatica de números de celular no facebook.
    Posteriormente salvar os numeros encontrados com o link do facebook e o nome da pessoa, tentei fazer com o "streamreader", mas ele é muito rápido teria que fazer a leitura dos números em um txt com no máximo 1 por segundo.

    Imports System.IO
    Public Class Form1
    
    #Region "WEBBROWSER1"
        Private Sub WebBrowser1_DocumentCompleted(sender As Object, e As WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
    
        End Sub
    #End Region
    
    #Region "TEXTBOX E-MAIL"
        Private Sub TxtEmail_TextChanged(sender As Object, e As EventArgs) Handles TxtEmail.TextChanged
            WebBrowser1.Document.GetElementById("q").InnerText = TxtEmail.Text
            WebBrowser1.Document.Forms(0).InvokeMember("submit")
            Application.DoEvents()
        End Sub
    #End Region
    
    #Region "CELULARES"
        Private Sub TxtCelulares_TextChanged(sender As Object, e As EventArgs) Handles TxtCelulares.TextChanged
            WebBrowser1.Document.GetElementById("q").InnerText = TxtCelulares.Text
            WebBrowser1.Document.Forms(0).InvokeMember("submit")
            Application.DoEvents()
        End Sub
    
    #End Region
    
    #Region "BTN ARQUIVO"
        Private Sub BtnArquivo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnArquivo.Click
            OpenFileDialog1.Title = "Please Select a File"
            OpenFileDialog1.AddExtension = True
            OpenFileDialog1.Filter = "Text Files (*.txt) |*.txt"
            OpenFileDialog1.ShowDialog()
        End Sub
    #End Region
    
    #Region "OPENFILEDIALOG"
        Private Sub OpenFileDialog1_FileOk(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles OpenFileDialog1.FileOk
            Dim strm As System.IO.Stream
            strm = OpenFileDialog1.OpenFile()
            TextBox2.Text = OpenFileDialog1.FileName.ToString()
            If Not (strm Is Nothing) Then
                strm.Close()
            End If
        End Sub
    #End Region
    
    #Region "SUB NUMEROS"
        Sub Numeros()
            Dim objReader As New System.IO.StreamReader(TextBox2.Text)
            For i As Int32 = 0 To 10000
                Do While objReader.Peek() <> -1
                    TxtCelulares.Text = objReader.ReadLine
    
    
                Loop
            Next
        End Sub
    #End Region
    
    #Region "BTN GOO"
        Private Sub BtnGoo_Click(sender As Object, e As EventArgs) Handles BtnGoo.Click
            Numeros()
        End Sub
    #End Region
    
        Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
    
        End Sub
    End Class
    

    quarta-feira, 2 de setembro de 2015 12:29

Respostas

  • Susende a thread com sleep

    Thread.Sleep(2000);

    Da uma verificada no evento DocumentCompleted e você talvez você descubra novas maneiras de resolver seu problema.


    ROBERTOSLJUNIOR

    • Marcado como Resposta Marcos SJ sexta-feira, 4 de setembro de 2015 11:18
    quinta-feira, 3 de setembro de 2015 20:43
  • Boa tarde

    Coloca uma Thread.Sleep() com o tempo que você precisa de espera para ele fazer a leitura.

    Att

    • Marcado como Resposta Marcos SJ sexta-feira, 4 de setembro de 2015 11:19
    quinta-feira, 3 de setembro de 2015 20:54

Todas as Respostas

  • Olá Azatron,

    Entendi que o que você precisa fazer, mas isso não é necessariamente um problema. Precisamos que nos informe qual seria o problema que você está enfrentando que te impossibilita de fazer isso?

    Atenciosamente


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e 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.


    • Editado Marcos SJ quarta-feira, 2 de setembro de 2015 20:48
    quarta-feira, 2 de setembro de 2015 20:47
  • Boa noite Marcos Roberto de Souza Junior

    A leitura com StreamReader é muito rápida, não da tempo do navegador pesquisar os dados na barra de pesquisa. 

    Precisaria que ele fizesse a leitura de no máximo 2 por segundo, até porq não são muitos números que tenho que pesquisar.

    Obrigado 

    quarta-feira, 2 de setembro de 2015 21:27
  • Susende a thread com sleep

    Thread.Sleep(2000);

    Da uma verificada no evento DocumentCompleted e você talvez você descubra novas maneiras de resolver seu problema.


    ROBERTOSLJUNIOR

    • Marcado como Resposta Marcos SJ sexta-feira, 4 de setembro de 2015 11:18
    quinta-feira, 3 de setembro de 2015 20:43
  • Boa tarde

    Coloca uma Thread.Sleep() com o tempo que você precisa de espera para ele fazer a leitura.

    Att

    • Marcado como Resposta Marcos SJ sexta-feira, 4 de setembro de 2015 11:19
    quinta-feira, 3 de setembro de 2015 20:54
  • Obrigado Roberto. 
    O código ficou assim:
    #Region "SUB NUMEROS"
        Sub Numeros()
            Dim objReader As New System.IO.StreamReader(TextBox2.Text)
            For i As Int32 = 0 To 10000
                Do While objReader.Peek() <> -1
                    TxtCelulares.Text = objReader.ReadLine
                    System.Threading.Thread.Sleep(3000)
                Loop
            Next
        End Sub
    
    #End Region

    sábado, 5 de setembro de 2015 13:27