Alan Vieira Postado Outubro 21, 2008 Denunciar Share Postado Outubro 21, 2008 Olá! Amigos, tenho uma duvida. A empresa no qual trabalho tem contrato com uma outra empresa fora do pais que disponibiliza um arquivo XML com informações de clima/tempo e etc para a região. Acontece que quero customizar as imagens que são providas desta fonte. O xml se dispoe da seguinte forma : <xml> <item name="são paulo"> <day1st>Tuesday</day1st> <day2nd>Wednesday</day2nd> <day3rd>Thursday</day3rd> <day4th>Friday</day4th> <day5th>Saturday</day5th> <temp1st>27</temp1st> <temp2nd>28</temp2nd> <temp3rd>29</temp3rd> <temp4th>24</temp4th> <temp5th>28</temp5th> <pic1st>http://icons-pe.wxug.com/i/c/a/mostlycloudy.gif</pic1st> <pic2nd>http://icons-pe.wxug.com/i/c/a/mostlysunny.gif</pic2nd> <pic3rd>http://icons-pe.wxug.com/i/c/a/partlycloudy.gif</pic3rd> <pic4th>http://icons-pe.wxug.com/i/c/a/partlycloudy.gif</pic4th> <pic5th>http://icons-pe.wxug.com/i/c/a/cloudy.gif</pic5th> <con1st>Mostly Cloudy</con1st> <con2nd>Scattered Clouds</con2nd><con3rd>Partly Cloudy</con3rd><con4th>Partly Cloudy</con4th><con5th>Overcast</con5th> <location>são Paulo</location> </item> </xml> O que quero fazer: 1) Coletar estes dados e grava-los em algum lugar (pode ser cookie, session ou até bd a gente faz negocio) 2) A partir destes dados fazer um select case para que SE o conteudo da tag pic1st for "X" substituir por "Y" (poderia colocar um link de uma imagem no meu site ou hospedada em outro lugar) 3) Depois disso eu geraria um novo xml com os dados já atualizados e mandaria minha aplicação buscar desta nova fonte. A duvida é : - Esta empresa disponibiliza apenas o link do xml(ex:www.empresa.com/arquivo.xml) , até porque estes dados são constantemente atualizados. Como faço para obter estas informacoes e gravar em algum lugar? O resto consigo fazer sem problemas. Será que podem ajudar este velho rapaz? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bareta Postado Outubro 23, 2008 Denunciar Share Postado Outubro 23, 2008 use xmlhttp, para capturar o arquivo. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Visitante Postado Outubro 23, 2008 Denunciar Share Postado Outubro 23, 2008 use xmlhttp, para capturar o arquivo.Opa... vlw pela dica...mas será que poderia exemplificar mais ou menos como posso fazer isso? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bareta Postado Outubro 24, 2008 Denunciar Share Postado Outubro 24, 2008 mastigadinho<% '------------------------------------------------ Public Function BinaryToString(xBinary) Dim Binary Dim RS, LBinary If VarType(xBinary)=8 Then Binary = MultiByteToBinary(xBinary) Else Binary = xBinary Const adLongVarChar = 201 Set RS = CreateObject("ADODB.Recordset") LBinary = LenB(Binary) If LBinary>0 Then RS.Fields.Append "mBinary", adLongVarChar, LBinary RS.Open RS.AddNew RS("mBinary").AppendChunk Binary RS.Update BinaryToString = RS("mBinary") Else BinaryToString = "" End If Set RS = Nothing End Function Public Function MultiByteToBinary(MultiByte) Dim RS, LMultiByte, Binary Const adLongVarBinary = 205 Set RS = CreateObject("ADODB.Recordset") LMultiByte = LenB(MultiByte) If LMultiByte>0 Then RS.Fields.Append "mBinary", adLongVarBinary, LMultiByte RS.Open RS.AddNew RS("mBinary").AppendChunk MultiByte & ChrB(0) RS.Update Binary = RS("mBinary").GetChunk(LMultiByte) End If Set RS = Nothing MultiByteToBinary = Binary End Function '------------------------------------------------ 'Declaração das variáveis Dim objXmlHttp Dim Url Dim Conteudo 'Inicialização do objeto Set objXmlHttp = Server.CreateObject("MSXML2.XMLHTTP") 'Url do Site Url = "http://rss.terra.com.br/0,,EI4795,00.xml" 'Resgatando os dados da URL via HTTP objXMLHttp.Open "GET", Url, False objXMLHttp.Send 'Utilizando a função "BinaryToString" não haverá mais problemas com acentos. Conteudo = BinaryToString(objXmlHttp.ResponseBody) Response.ContentType = "text/xml" Response.Write Conteudo 'Destruição do objeto Set objXmlHttp = Server.CreateObject("MSXML2.XMLHTTP") %> Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Alan Vieira
Olá!
Amigos, tenho uma duvida.
A empresa no qual trabalho tem contrato com uma outra empresa fora do pais que disponibiliza um arquivo XML com informações
de clima/tempo e etc para a região. Acontece que quero customizar as imagens que são providas desta fonte. O xml se dispoe
da seguinte forma :
<xml>
<item name="são paulo">
<day1st>Tuesday</day1st>
<day2nd>Wednesday</day2nd>
<day3rd>Thursday</day3rd>
<day4th>Friday</day4th>
<day5th>Saturday</day5th>
<temp1st>27</temp1st>
<temp2nd>28</temp2nd>
<temp3rd>29</temp3rd>
<temp4th>24</temp4th>
<temp5th>28</temp5th>
<pic1st>http://icons-pe.wxug.com/i/c/a/mostlycloudy.gif</pic1st>
<pic2nd>http://icons-pe.wxug.com/i/c/a/mostlysunny.gif</pic2nd>
<pic3rd>http://icons-pe.wxug.com/i/c/a/partlycloudy.gif</pic3rd>
<pic4th>http://icons-pe.wxug.com/i/c/a/partlycloudy.gif</pic4th>
<pic5th>http://icons-pe.wxug.com/i/c/a/cloudy.gif</pic5th>
<con1st>Mostly Cloudy</con1st>
<con2nd>Scattered Clouds</con2nd><con3rd>Partly Cloudy</con3rd><con4th>Partly Cloudy</con4th><con5th>Overcast</con5th>
<location>são Paulo</location>
</item>
</xml>
O que quero fazer:
1) Coletar estes dados e grava-los em algum lugar (pode ser cookie, session ou até bd a gente faz negocio)
2) A partir destes dados fazer um select case para que SE o conteudo da tag pic1st for "X" substituir por "Y" (poderia
colocar um link de uma imagem no meu site ou hospedada em outro lugar)
3) Depois disso eu geraria um novo xml com os dados já atualizados e mandaria minha aplicação buscar desta nova fonte.
A duvida é :
- Esta empresa disponibiliza apenas o link do xml(ex:www.empresa.com/arquivo.xml) , até porque estes dados são constantemente
atualizados.
Como faço para obter estas informacoes e gravar em algum lugar? O resto consigo fazer sem problemas.
Será que podem ajudar este velho rapaz?
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
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.