• Programmazione Android
  • CORSI ONLINE
  • Web Agency

Logo

Corsi di programmazione web e mobile online
Navigation
  • Home
  • CORSI ONLINE
  • Tutorial Pratici
  • GUIDE COMPLETE
    • Corso completo di C
    • Corso videogame con Cocos2d
    • Programmazione Cocoa Touch
  • Sezioni
    • Libri e manuali
    • Tips & Tricks
    • Risorse utili
    • Strumenti di Sviluppo
    • Materiale OpenSource
    • Framework
    • Guide Teoriche
    • Guide varie
    • Grafica e Design
    • iPad
    • News
    • Video Tutorial
    • Windows Phone
  • Pubblicità
  • About
    • Chi siamo
    • Pubblicazioni
    • Collabora
    • Sostieni devAPP

RSSheet: una classe alpha per scrivere fogli di calcolo con le nostre applicazioni iPhone e iPad

By Andrea Cappellotto | on 21 Settembre 2011 | 14 Comments
Risorse utili

Oggi vi segnaliamo un progetto, disponibile in versione Alpha, realizzato dal nostro moderatore e autore Andrea Cappellotto, che in quattro e quattr’otto ha realizzato un componente che ci permetterà di creare file compatibili con Excel del pacchetto Microsoft Office e presto anche Calc del concorrente Open Office: RSSheet!

Il progetto, nonostante sia ancora in versione Alpha, è già operativo e funzionante ed è disponibile sul canale github di Andrea. L’obiettivo, oltre a quello di proporvi un interessante oggetto da integrare nelle vostre applicazioni iOS, è ora quello di trovare developers iPhone e iPad appassionati che abbiano voglia di unirsi a lui e lavorare insieme per estendere le funzionalità, fino magari a creare un vero e proprio XLS Reader.

Come integrare e usare RSSheet (Raaden Spread Sheet) nelle nostre app

Vediamo brevemente come integrare e utilizzare RSSheet all’interno dei nostri progetti XCode. Per prima dovremo scaricare tutto il necessario, che trovate direttamente al Seguente indirizzo.



Scaricato il file .zip estraiamo il suo contenuto e trascinamolo dentro il nostro progetto (ricordatevi di copiare i file all’interno del progetto con la spunta su “copy items into destination group & file folder).



Fatto questo non dovremo far altro che importare “RSworkBook” sul vostro file di intestazione .h e creare il nostro bellissimo workBook!!:)

Ecco un semplice esempio di come si crea un foglio di calcolo con RSSheet:

RSworkBook * folder = [[RSworkBook alloc] init];
    folder.author = @"andrea cappellotto";
    folder.version = 1.2;
    
    RSworkSheet * sheet = [[RSworkSheet alloc] initWithName:@"prova"];
    
    RSworkSheetRow * row = [[RSworkSheetRow alloc] initWithHeight:20];
    
;
; [sheet addWorkSheetRow:row];
; RSworkSheetRow * row2 = [[RSworkSheetRow alloc] initWithHeight:24]; RSStyle * styleRow2 = [[RSStyle alloc] init]; styleRow2.font = [UIFont systemFontOfSize:24]; styleRow2.size = 24; styleRow2.color = [UIColor redColor]; styleRow2.alignmentV = RSStyleTopAlign; styleRow2.alignmentH = RSStyleMiddleAlign; row2.style = styleRow2; [row2 addCellNumber:100]; [row2 addCellData:[NSDate date]]; [sheet addWorkSheetRow:row2]; [row2 release]; [styleRow2 release]; [folder addWorkSheet:sheet]; [sheet release]; NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDir = [documentPaths objectAtIndex:0]; [folder writeWithName:@"prova" toPath:documentsDir]; [folder release];

Come vedete l’implementazione è davvero molto semplice. Abbiamo innanzitutto creato una cartella di lavoro, quindi abbiamo settato autore e versione.
Successivamente abbiamo creato un foglio di lavoro con il nome del foglio. Abbiamo creato una riga in cui potremo aggiungere le nostre celle, che al momento potranno essere di tre tipi (stringa, numero e data). Ad ogni riga potremmo inoltre impostare uno stile (tutte le celle prenderanno quello stile) oppure, volendo, potremmo specificare lo stile di una singola cella. Se non viene specificato nessuno stile verrà utilizzato quello di default. A questo punto non ci resta che aggiungere le righe al foglio di lavoro e il foglio di lavoro alla cartella di lavoro.

Il metodo:

 [folder writeWithName:@"prova" toPath:documentsDir];

ha il compito infine di creare il file e salvarlo con estensione .xls sulla cartella specificata.

Semplice vero?

Ecco il risultato finale:


RSSheet-excel-xcode-devAPP

Conclusioni

Al momento la versione Alpha di RSSheet è compatibile solo con MS Office. Andrea è riuscito a creare una versione compatibile con entrambi gli editor (Excel e Calc) ma questo richiede di salvare il file in formato .xml e questo può causare qualche problema, in quanto non sempre il programma utilizzato per aprire i file .xml è uno di questi due. Se qualcuno avesse qualche consiglio, si faccia avanti!! 🙂

PS: un sentito ringraziamento a dark_vivi che mi ha dato un grosso aiuto con i test della prima release del progetto.

Share this story:
  • tweet

Tags: codice esempio Xcodeexcel Xcodefogli di calcolo XcodeMateriale OpenSourceMateriale OpenSource Xcodeprogrammare iphone

Recent Posts

  • Parte il percorso programmatori iOS in Swift su devACADEMY.it

    20 Dicembre 2017 - 0 Comment
  • Android, crittografare dati velocemente con Encryption

    24 Settembre 2018 - 0 Comment
  • Sql2o, accesso immediato ai database tramite Java

    3 Settembre 2018 - 0 Comment
  • Okio, libreria per ottimizzare l’input/output in Java

    27 Agosto 2018 - 0 Comment

Related Posts

  • AFNetworking: una libreria per semplificare il networking di un app

    18 Febbraio 2015 - 0 Comment
  • T#114 – Uso della crittografia nelle applicazioni iPhone e iPad con RNCryptor – Parte 2

    22 Marzo 2013 - 1 Comment
  • T#113 – Uso della crittografia nelle applicazioni iPhone e iPad con RNCryptor – Parte 1

    18 Marzo 2013 - 2 Comments

Author Description

Perito Elettrotecnico e studente di Scienze Informatiche presso l'università di Trento. Da inizio 2010 , dopo aver lavorato come sistemista-tecnico informatico, si occupa di programmazione in ambito iOS, collabora con un'azienda trentina nello sviluppo di applicazioni iOS per il turismo e realizza soluzioni personalizzate per aziende. Tra gli ultimi progetti ricordiamo l'integrazione tra iOS e Arduino segno che l'open source può benissimo lavorare con sistemi più chiusi come i device Apple! Per devAPP scrive tutorial sulla programmazione, da cosigli su strumenti da utilizzare per semplificare la programmazione, è inoltre moderatore del forum con all'attivo quasi mille post e partecipazioni giornaliere.

14 Responses to “RSSheet: una classe alpha per scrivere fogli di calcolo con le nostre applicazioni iPhone e iPad”

  1. 22 Settembre 2011

    milonet

    complimentissimi.. gran lavoro!!! appena ho un attimo giuro che lo provo!

  2. 22 Settembre 2011

    Andrea Cappellotto

    grazie mille!! spero in qualche aiuto in modo da poter miglioralo…:)

  3. 5 Ottobre 2011

    Claudio

    Ho provato ad utilizzare RSSheet per il mio progetto ma dopo aver eseguito tutta la mia parte custom (ho messo degli NSLog, la parte mia la esegue tutta senza problemi, mi da questo errore e crasha:

    2011-10-05 12:05:42.853 Argo 2.0 beta[1869:207] *** -[CFString release]: message sent to deallocated instance 0x4c53f90

    premetto che, a quanto dicono i log subito prima del crash, il salvataggio dell’xls va a buon fine

    2011-10-05 12:05:42.852 Argo 2.0 beta[1869:207] salvataggio corretto
    2011-10-05 12:05:42.853 Argo 2.0 beta[1869:207] path:/Users/newsid/Library/Application Support/iPhone Simulator/4.3.2/Applications/CF432C6A-7257-40FC-98A7-EEF687D6CAC4/Documents/iArgo Export.xls

  4. 5 Ottobre 2011

    Andrea Cappellotto

    ciao, se crasha dopo aver salvato il file probabilmente non riguarda la classe. Comunque quell’errore riguarda il release su una stringa, controllo il codice per vedere se qualche release sbagliato! grazie per la segnalazione! 😉

  5. 6 Ottobre 2011

    Claudio

    Mettendo da parte il release con crash per ora.. Domanda stupida. una volta salvato, come prendo il riferimento al file? nel mio progetto dovrei salvare la mia struttura dati in un file excel per poi inviarlo tramite email (sempre dall’app)

    Claudio

  6. 7 Ottobre 2011

    Andrea Cappellotto

    quando salvi il file viene salvato nella cartella Documents della tua app. Ti basta ottenere il path della cartella aggiungerci il nome del file e hai il percorso del file creato

  7. 8 Ottobre 2011

    mariotto

    Non potresti salvare i dati formattati in csv?
    Cmq il progetto è interessante…appena ho due min gli do un’occhiata

  8. 12 Ottobre 2011

    Claudio

    Novità sul release della stringa? ma solo a me da questo problema?

    Claudio

  9. 12 Ottobre 2011

    Claudio

    facendo delle prove (commentando alcuni release) ho notato che non crasha se commento
    [dateString release];

    nel metodo
    – (BOOL)writeWithName:(NSString*)name toPath:(NSString*)path

    del file RSWorkBook.m

    Claudio

  10. 12 Ottobre 2011

    Andrea Cappellotto

    ciao, appena ho un attimo controllo.. cmq può essere che sia quel release a creare problemi, grazie per i test!! hai provato poi il file se viene letto correttamente?? ho provato ad aggiungere alcune librerie in c che creano file xls ma alla fine non ho trovato una soluzione valida.. questa sembra essere l’unica plausibile…

  11. 12 Ottobre 2011

    Andrea Cappellotto

    si, potresti farlo in csv, ma il csv usa diverse codifiche (, o 😉 quindi è un problema, e poi le personalizzazioni sono poche… per questo avevo pensato agli xls


    mariotto:

    Non potresti salvare i dati formattati in csv?
    Cmq il progetto è interessante…appena ho due min gli do un’occhiata

  12. 13 Ottobre 2011

    Claudio

    il file lo salva ma poi ho trovato problemi nella lettura.
    -Direttamente su iphone (tramite web view) mi dice formato file non valido (o qualcosa del genere non ricordo)
    -Su mac l’icona rimane bianca (invece di dare la classica icona dei file excel) e se provo ad aprirlo si presenta una finestra dove dando ok mostra il file tutto su una colonna (in piu’ righe), stampato come se fosse un file di testo, quindi con tutti i tag xml.
    -Su MS Office (da windows) appena apro il file mi dice che il formato è diverso dall’estensione, pero’ lo visualizza correttamente.

  13. 13 Ottobre 2011

    Andrea Cappellotto

    ciao, allora se vuoi continuiamo qui la discussione
    http://forum.devapp.it/showthread.php?2759-ma-un-framework-per-i-fogli-ti-calcolo

    cmq io l’ho testata solo con MSOffice, su mac funziona senza nessun problema, su win invece da quell’errore.. pensare di caricarla su webview è impossbilie.. bisogna fare un parser apposito.. il problema resta la compatibilità con altri lettori… anche perchè la soluzione a cui ho pensato non è quella giusta, ma per il momento è l’unica che ho trovato..

  14. 13 Ottobre 2011

    Claudio

    Mi sono iscritto ora al forum (newsid), sono in attesa di attivazione.

    Comunque i normali file xls generati da excel (o calc) vengono visualizzati correttamente nelle web view.
    Se mi viene in mente qualcosa scrivo sul topic del forum dopo l’attivazione dell’account

Leave a Reply

Your email address will not be published. Required fields are marked *


*
*

Corso online di programmazione android e java

SEZIONI

  • Android
  • Comunicazioni
  • Contest
  • Corsi ed Eventi
  • Corso completo di C
  • Corso programmazione videogiochi
  • Framework
  • Grafica e Design
  • Guida rapida alla programmazione Cocoa Touch
  • Guide Teoriche
  • Guide varie
  • iPad
  • Le nostre applicazioni
  • Libri e manuali
  • Materiale OpenSource
  • News
  • Pillole di C++
  • Progetti completi
  • Risorse utili
  • Strumenti di Sviluppo
  • Swift
  • Tips & Tricks
  • Tutorial Pratici
  • Video Tutorial
  • Windows Phone

Siti Amici

  • Adrirobot
  • Allmobileworld
  • Apple Notizie
  • Apple Tribù
  • Avvocato360
  • Blog informatico 360°
  • bubi devs
  • fotogriPhone
  • GiovaTech
  • iApp-Mac
  • iOS Developer Program
  • iPodMania
  • MelaRumors
  • Meritocracy
  • SoloTablet
  • TecnoUser
  • Privacy & Cookie Policy
©2009-2018 devAPP - All Rights Reserved | Contattaci
devAPP.it è un progetto di DEVAPP S.R.L. - Web & Mobile Agency di Torino
Str. Volpiano, 54 - 10040 Leini (TO) - C.F. e P.IVA 11263180017 - REA TO1199665 - Cap. Soc. € 10.000,00 i.v.

devACADEMY.it

Vuoi imparare a programmare?

Iscriviti e accedi a TUTTI i corsi con un’unica iscrizione.
Oltre 70 corsi e migliaia di videolezioni online e in italiano a tua disposizione.

ISCRIVITI SUBITO