[Risolto] leggere .ods da shell

Discussioni sull'applicazione per i fogli di calcolo
Rispondi
piviul
Messaggi: 3
Iscritto il: mercoledì 31 marzo 2010, 9:09

[Risolto] leggere .ods da shell

Messaggio da piviul »

Ciao a tutti, ho la necessità di leggere il contenuto di file di openoffice calc (.ods) da script shell in linux. Qualcuno ha qualche suggerimento?

Esiste un tool che converte un foglio ods in csv?

Un'alternativa potrebbe essere quella di scompattare l'ods e leggere l'xml... ho dato un'occhiata ma in questo caso sarebbe interessante riuscire ad avere qualche informazione sul formato ods...

Ringrazio anticipatamente chiunque possa fornirmi informazioni utili.

Piviul

Moderazione: aggiunto [Risolto] all'oggetto
Avatar utente
kaneda
Messaggi: 19
Iscritto il: lunedì 29 marzo 2010, 10:09
Località: Dolo

Re: leggere .ods da shell

Messaggio da kaneda »

Per leggere il file da shell basta un more... ma sicuramente non e' cio' che ti serve.
Che contenuto devi estrarre? Una cella o un valore fisso?
La cosa e' interessante ma vorrei saperne di piu' (solo curiosita').
Kaneda
OpenOffice 3.2 su tutto
piviul
Messaggi: 3
Iscritto il: mercoledì 31 marzo 2010, 9:09

Re: leggere .ods da shell

Messaggio da piviul »

Per ogni foglio di lavoro nel file devo riuscire a leggere i valori di una colonna specifica.

...se hai qualche suggerimento.

Grazie

Piviul
openoffice 3.1.1 su Debian 5.0.4
Avatar utente
kaneda
Messaggi: 19
Iscritto il: lunedì 29 marzo 2010, 10:09
Località: Dolo

Re: leggere .ods da shell

Messaggio da kaneda »

Per partire ti consiglio la lettura di questo "mattone": http://books.evc-cit.info/ ha ottimi spunti!
Probabilmente io partirei alla bersagliera esportando in csv, ed importando il risultato in una listbox per ri-esportare i dati della colonna che mi interessa... ma e' un accrocchio.
Qui trovi lo script per la conversione xls-->ods-->csv http://solidcode.com/about/evconv.txt si puo' estrarre il codice da ods a csv e lavorar da li... visto che interessa anche a me proviamo a vedere come si puo' fare... magari dotando il tutto di un frontend grafico :D
Kaneda
OpenOffice 3.2 su tutto
Avatar utente
kaneda
Messaggi: 19
Iscritto il: lunedì 29 marzo 2010, 10:09
Località: Dolo

Re: leggere .ods da shell

Messaggio da kaneda »

Se installi "unoconv" la conversione ods a csv avviene perfettamente con

Codice: Seleziona tutto

 unoconv -f ods file.ods fileconvertito.csv
ma tieni presente che viene letto solo il primo foglio...
Kaneda
OpenOffice 3.2 su tutto
piviul
Messaggi: 3
Iscritto il: mercoledì 31 marzo 2010, 9:09

Re: leggere .ods da shell

Messaggio da piviul »

...ma devo farlo fuori da openoffice. Più o meno ho risolto semplicemente andando a leggere il file conent.xml tramite odt2txt con l'opzione raw e poi (siccome devo prenedere la prima colonna di ogni foglio con qualcosa tipo

grep -o \<table:table-row[^\<]*\>\<table:table-cell[^\<]*\>\<text:p\>[^\<]*\</text:p\> | sed 's/<table:table-row[^<]*<table:table-cell[^<]*><text:p>\(.*\)<\/text:p>/\1/g'

Ciao e grazie a tutti quanti.

Paolo
openoffice 3.1.1 su Debian 5.0.4
Rispondi