Autore Topic: Ricavare dati in un file xml contenenti tag html con saxparser  (Letto 1003 volte)

Offline esoteric82

  • Nuovo arrivato
  • *
  • Post: 9
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    htc wildfire s
  • Sistema operativo:
    windows xp
Ricavare dati in un file xml contenenti tag html con saxparser
« il: 13 Gennaio 2012, 11:29:32 CET »
0
salve a tutti gli utenti del forum, ho il seguente problema, ho sviluppato un'app che preleva dati da un file xml tramite saxparser e diciamo che tutto è andato liscio grazie soprattutto a questo forum,  ora però dovrei prelevare delle immagini dall'xml che sono sotto forma di tag html all'interno di un tag xml.
Posto il codice per farvi meglio capire:

Codice (XML): [Seleziona]
<description>
<div> <img src="http://***************************la-via-del-latte/images/immagine1.png/pa_thumb/imagex128x83.png"
alt="immagine1.png" title="immagine1.png" height="83" width="128" class="image-left foto-item" /> </div>
La produzione casearia racconta la storia e la geografia dei territori  attraverso processi di produzione tramandati e gusti inconfondibili
che distinguono l'identità dei luoghi.
</description>


il problema è che riesco a leggere la descrizione dell'oggetto ma non riesco a ricavare i dati all'interno del tag img src,
il saxparser non riconosce i quei tag credo perchè non sono tag xml ma html.
C'è un modo per prendere quei tag?
Grazie a tutti per un eventuale dritta.

Offline iceweasel

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 878
  • Respect: +147
    • Mostra profilo
  • Dispositivo Android:
    LGE P990 - Google Nexus 5
  • Sistema operativo:
    Linux Debian Sid
Re:Ricavare dati in un file xml contenenti tag html con saxparser
« Risposta #1 il: 13 Gennaio 2012, 16:51:22 CET »
+1
Un parse XML riconosce solo gli elementi XML quindi è inutilizzabile per HTML.

La cosa migliore è ricavare il tag XML e poi utilizzare una regular expression opportuna per individuare la parte HTML che serve:

Pattern | Android Developers

per individuare un URL c'è già la regular expression pronta:

Patterns | Android Developers
adb logcat | tee /tmp/logcat | grep TAG

Offline esoteric82

  • Nuovo arrivato
  • *
  • Post: 9
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    htc wildfire s
  • Sistema operativo:
    windows xp
Re:Ricavare dati in un file xml contenenti tag html con saxparser
« Risposta #2 il: 13 Gennaio 2012, 18:21:23 CET »
0
ti ringrazio per la risposta...ma è possibile riscrivere l'Xml dal lato server diciamo in modo più corretto? ovvero esporre l'immagine con un semplice  tag xml?  scusa le domande ma non ne capisco molto di esposizioni dati

Offline iceweasel

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 878
  • Respect: +147
    • Mostra profilo
  • Dispositivo Android:
    LGE P990 - Google Nexus 5
  • Sistema operativo:
    Linux Debian Sid
Re:Ricavare dati in un file xml contenenti tag html con saxparser
« Risposta #3 il: 13 Gennaio 2012, 18:40:05 CET »
0
Se puoi modificare come esporre i dati dal lato server, studiati meglio cosa sono e come creare validi file XML senza mischiare HTML e XML.
adb logcat | tee /tmp/logcat | grep TAG

Offline esoteric82

  • Nuovo arrivato
  • *
  • Post: 9
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    htc wildfire s
  • Sistema operativo:
    windows xp
Re:Ricavare dati in un file xml contenenti tag html con saxparser
« Risposta #4 il: 16 Gennaio 2012, 10:41:21 CET »
0
ok grazie, il problema è che non sta a me modificare i dati esposti...a me è stato solo chiesto di prelevare quei dati da un feedRss siffatto...

Offline iceweasel

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 878
  • Respect: +147
    • Mostra profilo
  • Dispositivo Android:
    LGE P990 - Google Nexus 5
  • Sistema operativo:
    Linux Debian Sid
Re:Ricavare dati in un file xml contenenti tag html con saxparser
« Risposta #5 il: 17 Gennaio 2012, 13:54:15 CET »
0
Se non puoi modificare XML mi sfugge la seconda domanda sul riscrivere l'XML dal lato server vista impossibilità.

Se esegui un parse di un file XML e ti trovi in un campo dei dati HTML anch'essi da elaborare poi farlo in diversi modi sotto Android:

  • ricerca diretta con le funzioni di stringa per individuare sub-stringhe e/o caratteri chiave
  • utilizzare delle  regular expression opportune
  • utilizzare un parse HTML

prima ti ho consigliato le regular expression sono molto efficienti e il codice è molto compatto. La ricerca diretta di solito è lenta e bisogna scrivere molto codice. L'utilizzo di un parse HTML non è sempre disponibile (un parse HTML completo è molto complesso come codice), Android ha una classe per farlo ma è molto limitata:

Html | Android Developers




adb logcat | tee /tmp/logcat | grep TAG

Offline esoteric82

  • Nuovo arrivato
  • *
  • Post: 9
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    htc wildfire s
  • Sistema operativo:
    windows xp
Re:Ricavare dati in un file xml contenenti tag html con saxparser
« Risposta #6 il: 19 Gennaio 2012, 19:14:38 CET »
0
sono riuscito a farmi cambiare l'xml lato server ora riesco ad ottenere dei url dai cui devo scaricare le immagini. ho letto varie guide tra cui questa

http://www.helloandroid.com/tutorials/how-download-fileimage-url-your-device

solo che non riesco a capire bene come funziona...soprattutto dove mi salva le immagini e come le richiamo,

c'è qualcuno che ha qualche idea?

Offline esoteric82

  • Nuovo arrivato
  • *
  • Post: 9
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    htc wildfire s
  • Sistema operativo:
    windows xp
Re:Ricavare dati in un file xml contenenti tag html con saxparser
« Risposta #7 il: 27 Gennaio 2012, 11:02:09 CET »
0
grazie a tutti per l'aiuto. Ho risolto il problema era nel Simpleadapter che utilizzavo infatti accetta immagini di tipo int. Utilizzando un binder ho risolto.