Gestione archivi ZIP¶
zip.get¶
Estrae i file da un archivio compresso.
Parametri:
- filename: il nome del file zip
- filelist: l’elenco dei file da estrarre (default tutti i file contenuti nell’archivio)
- :files => []: un array con l’elenco dei file da estrarre (default tutti i file contenuti nell’archivio)
- :pwd => "password": la password per decriptare i file (default nessuna password). E’ supportata solo la criptazione zip tradizionale (ZipCrypto), non la criptazione AES
- :folders => true|false: true ricrea le eventuali sottocartelle contenute nel file zip (default); false non ricrea le sottocartelle
- :outpath => path: il percorso in cui estrarre i file (default la cartella corrente)
- :replace => true|false: true sovrascrive i file esistenti (default); false non sovrascrive i file
1 2 3 4 5 6 7 8 9 | zip.get "zipfile1", :outpath => "out/report"
zip.get "zipfile1", "report1.html", "report1.xlsx"
zip.get "zipfile1", :files => ["report1.html", "report1.xlsx"]
zip.get "zipfile1", "tab/report2.xlsx", :folders => false
zip.get "zipfile2", "report*.*", :pwd => "pass123"
|
zip.new¶
Genera un archivio compresso.
Parametri:
- filename: il nome del file zip
- filelist: l’elenco dei file da comprimere
- :files => []: un array con l’elenco dei file da comprimere
- :pwd => "password": la password per criptare i file (default nessuna password). E’ supportata solo la criptazione zip tradizionale (ZipCrypto), non la criptazione AES
- :folders => true|false: true memorizza le eventuali sottocartelle nel file zip (default); false non memorizza le sottocartelle nel file zip
- :outpath => path: il percorso in cui generare il file zip (default la cartella corrente)
- :inpath => path: il percorso in cui cercare i file da comprimere (default la cartella corrente o la cartella indicata nel nome del file)
- :replace => true|false: true sovrascrive il file zip se esistente (default); false non sovrascrive il file zip
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | zip.new "zipfile1", "report1.xlsx"
zip.new "zipfile2", "report1.html", "report2.html"
zip.new "zipfile3", "#{@name}.xlsx", :pwd => "pass123"
zip.new "zipfile4", "**/*.xlsx"
zip.new "zipfile5",
:outpath => "out",
:pwd => "pass123",
:files => [
"#{@name}.*",
"tab/*.xlsx",
"rake-raking.xlsx",
"report/*/*.*"
]
|
Consiglio
La variabile @name contiene il nome del report (il nome di default o quello impostato con l’istruzione name)
zip.add¶
Aggiunge uno o più file a un archivio esistente.
Utilizza gli stessi parametri di zip.new tranne :pwd.
1 2 | zip.add "zipfile", "data.sav"
zip.add "zipfile", "*.csv"
|
Attenzione
Anche se si aggiungono file a un archivio criptato, i file aggiunti non saranno criptati.