Archivi tag: zip

TUTORIAL GOLANG – LEGGERE ARCHIVI

Dopo aver visto come creare dei file zip vediamo come poter effettuare la lettura e lo spacchettamento di un file zip.

Ipotizziamo di avere un file zip sotto la directory download, vogliamo leggerlo e scompattarlo nella directory dove lanciamo la routine go.

A questo punto creiamo una directory rdt con permessi di scrittura

Infine scorriamo l’elenco dei file presenti all’interno dello zip, li leggiamo e li copiamo all’interno della directory appena generata

In questo esempio di nuovo vediamo il pakage filepath che ci permette di costruire dei percorsi sul file system con la function Join che concatena i percorsi ricevuti.

Alla prossima

TUTORIAL GOLANG – GENERARE ARCHIVI

Golang mette a disposizione i package tar e zip per gestire le operazioni comuni di creazione archivi e la loro compressione. Il package tar consente di raggruppare in un unico file tutti i file contenuti in una directory mentre il package zip consente di effettuare la compressione dei dati.

Vediamo come creare un tar e un file zip. In particolare consideriamo una cartella e mettiamo il contenuto della cartella in un file tar e in un file zip

Tramite la fucntion Create creo sia il file tar che il file zip e per ognuno di essi genero un writer. Tramite il comando defer mi assicuro che la chiusura del writer venga effettuato alla fine di tutti i miei comandi.

Tramite la funcion readDir recupero tutti i file della directory corrente, genero l’header per il tar che inizializzo con il nome e la size del file che sto provessando e finalmente posso scrivere tramite il writer sia l’header che il contenuto del file.

Per lo zip il giro è ancora più semplice perchè non è obbligatorio il passaggio dell’header.

Nel prossimo articolo vedremo come leggere e recuperare i dati dai miei archivi.