none
Ler Valor entre Tags e mostrar em textbox RRS feed

  • Pergunta

  • E dai pessoal

    é o seguinte como eu faço pra mim ler um valor que esta no meio dessas tags por exemplo

    <td ALIGN="right" class="fundoPadraoBClaro2">2,0413</td>

    sendo que esse valor de 2,0413 pode variar dependendo o dia pra por exemplo
    um numero com menos casas decimais tipo 2,031.

    e no campo onde eu mostro esse valor quando tem menos ou mais casas ou ele aparece uma parte da tag ou quando tem mais casas ele come um numero do valor que é mostrado.

    Por isso preciso ler o valor que sempre vai estar entre essas tags.

    Se vcs puderem me da uma luz eu agradeço.


    • Editado -ZuQuI- quarta-feira, 25 de julho de 2012 11:38 Mal explicado
    terça-feira, 24 de julho de 2012 16:25

Respostas

  • Amigo, bom dia

    fiz uma pequena mudança no seu código, veja se melhorou

                WebClient client = new WebClient();
    
                Byte[] pageData = client.DownloadData("http://www4.bcb.gov.br/pec/taxas/batch/taxas.asp?id=txdolar");
                string pageHtml = Encoding.ASCII.GetString(pageData);
                Console.WriteLine(pageHtml);
                int i = pageHtml.IndexOf("Taxa de Compra") + 191;
                int j = pageHtml.IndexOf("Taxa de Venda") + 189;
                int y = pageHtml.IndexOf("americano\"><tr><td><img src=\"/gifs/quadro-p.gif\" ALIGN=\"middle\" alt=\" \"></td><td>") + 119;
    
                string taxaCompra = pageHtml.Substring(i, pageHtml.Substring(i).IndexOf("</td>"));
                string taxaVenda = pageHtml.Substring(j, pageHtml.Substring(i).IndexOf("</td>"));


    Olavo Oliveira Neto
    http://olavooneto.wordpress.com
    Twitter @Olavooneto
    Facebook Olavo Neto
    Linkedin Olavo Neto
    Se for útil marque como resposta e faça um Developer feliz :)

    • Marcado como Resposta -ZuQuI- quarta-feira, 25 de julho de 2012 12:14
    quarta-feira, 25 de julho de 2012 12:01
    Moderador
  • Amigo, mesmo que aumente o número de casa, como você está capturando os valores até o </td> não terá problemas com isto, pois o tamanho do que está sendo capturado não é fixo. 

    Olavo Oliveira Neto
    http://olavooneto.wordpress.com
    Twitter @Olavooneto
    Facebook Olavo Neto
    Linkedin Olavo Neto
    Se for útil marque como resposta e faça um Developer feliz :)

    • Marcado como Resposta -ZuQuI- quarta-feira, 25 de julho de 2012 12:43
    quarta-feira, 25 de julho de 2012 12:37
    Moderador

Todas as Respostas

  • Amigo, bom dia

    fiz uma pequena mudança no seu código, veja se melhorou

                WebClient client = new WebClient();
    
                Byte[] pageData = client.DownloadData("http://www4.bcb.gov.br/pec/taxas/batch/taxas.asp?id=txdolar");
                string pageHtml = Encoding.ASCII.GetString(pageData);
                Console.WriteLine(pageHtml);
                int i = pageHtml.IndexOf("Taxa de Compra") + 191;
                int j = pageHtml.IndexOf("Taxa de Venda") + 189;
                int y = pageHtml.IndexOf("americano\"><tr><td><img src=\"/gifs/quadro-p.gif\" ALIGN=\"middle\" alt=\" \"></td><td>") + 119;
    
                string taxaCompra = pageHtml.Substring(i, pageHtml.Substring(i).IndexOf("</td>"));
                string taxaVenda = pageHtml.Substring(j, pageHtml.Substring(i).IndexOf("</td>"));


    Olavo Oliveira Neto
    http://olavooneto.wordpress.com
    Twitter @Olavooneto
    Facebook Olavo Neto
    Linkedin Olavo Neto
    Se for útil marque como resposta e faça um Developer feliz :)

    • Marcado como Resposta -ZuQuI- quarta-feira, 25 de julho de 2012 12:14
    quarta-feira, 25 de julho de 2012 12:01
    Moderador
  • Oi Olavo valeu brigadão pela ajuda funcionando perfeito e muito mais simples do que eu tinha feito

    posso só te faze mais uma pergunta 

    teria como eu por no lugar de "i" a tag anterior ao valor que eu quero ou algum outro jeito de fazer isso

    pke pensa só se o valor entre as tags que eu quero aumenta o numero de casas ele vai corta valor não vai?

    desde jah agradeço

    string taxaCompra = pageHtml.Substring(i, pageHtml.Substring(i).IndexOf("</td>"));

    quarta-feira, 25 de julho de 2012 12:19
  • Amigo, mesmo que aumente o número de casa, como você está capturando os valores até o </td> não terá problemas com isto, pois o tamanho do que está sendo capturado não é fixo. 

    Olavo Oliveira Neto
    http://olavooneto.wordpress.com
    Twitter @Olavooneto
    Facebook Olavo Neto
    Linkedin Olavo Neto
    Se for útil marque como resposta e faça um Developer feliz :)

    • Marcado como Resposta -ZuQuI- quarta-feira, 25 de julho de 2012 12:43
    quarta-feira, 25 de julho de 2012 12:37
    Moderador
  • Mais uma vez Muito Obrigado
    quarta-feira, 25 de julho de 2012 12:44