10 Jan
Ruby: parserizzare i file di Excel
Recuperare informazioni da un file di Excel potrebbe fare comodo, con parseexcel di Hannes Wyss è possibile farlo semplicemente.
E’ stato fatto il porting da un modulo Perl di Kawai Takanoris. Per installare parseexcel dovete innanzitutto scaricare il pacchetto scomprimerlo e lanciare:
1
Un piccolo esempio di utilzzo:
1 #!/opt/local/bin/ruby 2 3 4 #Carica il file di Excel 5 workbook = Spreadsheet::ParseExcel.parse(path_to_file) 6 7 #Carica il worksheet che ti interessa 8 worksheet = workbook.worksheet(0) 9 10 #Itera sulle righe schippando ad esempio le prime due se sai che contengono gli header 11 skip = 2 12 worksheet.each(skip) {|row| 13 #la row è un array di celle 14 first_cell = row.at(0) 15 16 #Leggi il contenuto se sai che è una stringa trasformala con iconv: 17 str = row.at(1).to_s('latin1') 18 19 #se ti aspetti un float: 20 float = row.at(2).to_f 21 22 # se ti aspetti un intero: 23 int = row.at(3).to_i 24 25 # se ti aspetti una data: 26 date = row.at(4).date 27 28 # ParseExcel cerca di riconoscere il tipo di una cella per adesso solo di questi tipi: :date, :numeric, :text 29 celltype = first_cell.type 30 } 31


Interesting