DevTutorial #16 – Come utilizzare XML nell’iPhone SDK

Eccoci con un nuovo tutorial dedicato alla programmazione per iPhone. Dopo aver visto molti componenti, ho deciso di fare un tutorial sull’integrazione con una tecnologia molto utilizzata, specialmente in ambito web: stiamo parlando di XML.

Vedremo, quindi, come leggere un file XML, da cui leggere delle informazioni che abbiamo salvato. Questa operazione verrà eseguita in locale (ovvero il file xml sarà all’interno del nostro progetto), ma nulla vieta di avere il file caricato su un server web da cui accediamo tramite la nostra applicazione.

Leggi il tutorial completo su devAPP

Ingegnere informatico e sviluppatore freelance, mi occupo da anni di sviluppo per iOS (ma non solo). Dal 2008 scrivo su questo piccolo blog (con qualche lunga pausa), in cui parlo di programmazione e di qualsiasi altra cosa che mi diverta.

13 comments On DevTutorial #16 – Come utilizzare XML nell’iPhone SDK

  • Domanda:
    Ma non è possibile modificarlo un xml da iphone?

  • @corninos: sinceramente non so se esistono dei metodi specifici, casomai puoi trattare tutto come un classico file di testo e modificare ciò che ti serve..

  • Ma è possibile fare riferiemnto a file xml che sono contenuti in directory di siti web?
    esempio se il file xml da leggere e su:
    http://www.miosito.com/xml/prova.xml
    posso leggerlo con il parser che hai descritto? ci sono problemi o il percorso del file da leggere deve essere all’interno del telefonino?
    Saluti e Grazie

  • @8volante: certamente, ti basterà fare:

    path = @”http://www.miosito.com/xml/prova.xml”;

    e dovrebbe funzionare senza problemi! 😉

  • Salve,

    ho provato il tutorial, ma un file di circa 250 record me lo apre in 1 minuto circa, è corretto?

  • @Anto: mmm, mi sembra un po’ lentino.. sono grossi i record che deve aprire?

    ti potrei consigliare di passare ad un db SQL, però mi sembra strano che sia così lento XML (anche se il parser disponibile nell’iPhone SDK non è uno dei migliori..)

  • Ogni record è costituito da un cognome e un id (3 cifre).
    Il file xml è stato generato partendo da un file xls.

  • @Anto: allora è davvero troppo lento.. 250 record composti da tre campi di testo dovrebbero essere letti più velocemente.. strano..

    prova con un db SQL, penso che guadagnerai molto in termini di velocità 😉

  • @Andrea Busi: ciao andrea, purtroppo la soluzione che hai dato a 8volante non funziona 🙁 il parsing funziona bene se il file è in locale, se cambio solo la stringa path in quella di un indirizzo web non parsa più 🙁
    Puoi aiutarmi?

  • la soluzione per un file online è questa 😉

    NSURL *url = [[NSURL alloc] initWithString:@”http://yourUrl/yourFileName.xml”];
    NSXMLParser *parser = [[NSXMLParser alloc] initWithContentsOfURL:url];
    [parser setDelegate:self];

    poi dal bool in poi è uguale 😉

    PS ovviamente il messaggio è indirizzato a 8volante XD
    ah una cosa! nel controllo if del boolean puoi evitare anzi DEVI evitare il ==YES per evitare un errore logico! perchè essendo una variabile (appunto) logica l’espressione if(success) ne verifica la veridicità 😉

Leave a reply:

Your email address will not be published.

Site Footer