[Discutiamo]Parsing di un documento XML all'interno di un app Android

Simonecris91

Nuovo Utente
10 Mar 2014
2
0
0
Parsing di un documento XML all' interno di un app android

Buona sera!!
Avrei un piccolo problema riguardante la fine della discussione esattamente in questo punto:

"Per poter aggiungere la funzionalità di parsing all'interno dell'esempio spiegato nel precedente articolo, andiamo nella classe MainActivity.java e modifichiamo il metodo loadXmlFromNetwork() sostituendo l'operazione di lettura del documento scaricato con quella di parsing.

L'istruzione
result = convertStreamToString(stream);

diventa quindi
result = parserXML.parse(stream);"

Il mio problema è che quando sostituisco il result, mi da errore.(parserXML cannot be resolved)
Grazie in anticipo.
Simone
 

michelep

Utente Attivo
21 Nov 2013
123
4
0
www.michelepierri.it
Buona sera!!
Avrei un piccolo problema riguardante la fine della discussione esattamente in questo punto:

"Per poter aggiungere la funzionalità di parsing all'interno dell'esempio spiegato nel precedente articolo, andiamo nella classe MainActivity.java e modifichiamo il metodo loadXmlFromNetwork() sostituendo l'operazione di lettura del documento scaricato con quella di parsing.

L'istruzione
result = convertStreamToString(stream);

diventa quindi
result = parserXML.parse(stream);"

Il mio problema è che quando sostituisco il result, mi da errore.(parserXML cannot be resolved)
Grazie in anticipo.
Simone
Ciao Simone,
benvenuto nel forum!
Allora a quanto pare c'è un problema nella dichiarazione di parserXML.
Potresti postare il tuo metodo loadXmlFromNetwork:
Codice:
// Download XML from network
    private String loadXmlFromNetwork(String urlString) throws XmlPullParserException, IOException {
        InputStream stream = null;
        ParserXML parserXML = new ParserXML();
        String result ="";
        try {
            stream = downloadUrl(urlString);
            //result = convertStreamToString(stream);  
            result = parserXML.parse(stream);
		} finally {
	        // Controlliamo che l'INPUT STREAM sia chiuso dopo che l'app ha concluso il suo uso.
			// Makes sure that the InputStream is closed after the app is finished using it.
            if (stream != null) {
                stream.close();
            }
        }
        return result;
    }
Dovrebbe risultare come questo qui sopra. Se posti il tuo vediamo cosa c'è che non torna.

Michele.
 

Simonecris91

Nuovo Utente
10 Mar 2014
2
0
0
Parser documento XML

Ciao Michele, il codice scaricato dal link è questo:

Codice:
private String loadXmlFromNetwork(String urlString) throws XmlPullParserException, IOException {
        InputStream stream = null;

        String result ="";
        try {
            stream = downloadUrl(urlString);
            result = convertStreamToString(stream);      //Qua sostituisco result= parserXML.parse(stream);
        } catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} finally {
	        // Controlliamo che l'INPUT STREAM sia chiuso dopo che l'app ha concluso il suo uso.
			// Makes sure that the InputStream is closed after the app is finished using it.
            if (stream != null) {
                stream.close();
            }
        }

        return result;
    }

Ora sostituisco il result come indicato nella descrizione e mi da il problema di cui ho parlata in precedenza;
Ho provato a modificare il codice con quello che hai postato tu ieri ma l'errore è sempre su "ParserXML", della terza riga;
Non so come risolvere;
Grazie per la pazienza!!
 
Ultima modifica di un moderatore:

michelep

Utente Attivo
21 Nov 2013
123
4
0
www.michelepierri.it
Ciao Michele, il codice scaricato dal link è questo:

Codice:
private String loadXmlFromNetwork(String urlString) throws XmlPullParserException, IOException {
        InputStream stream = null;

        String result ="";
        try {
            stream = downloadUrl(urlString);
            result = convertStreamToString(stream);      //Qua sostituisco result= parserXML.parse(stream);
        } catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} finally {
	        // Controlliamo che l'INPUT STREAM sia chiuso dopo che l'app ha concluso il suo uso.
			// Makes sure that the InputStream is closed after the app is finished using it.
            if (stream != null) {
                stream.close();
            }
        }

        return result;
    }

Ora sostituisco il result come indicato nella descrizione e mi da il problema di cui ho parlata in precedenza;
Ho provato a modificare il codice con quello che hai postato tu ieri ma l'errore è sempre su "ParserXML", della terza riga;
Non so come risolvere;
Grazie per la pazienza!!
Puoi postare il tuo metodo (con il codice) nel quale avviene l'eccezione specificando a quale riga?