λογισμικό

* Γνώση Υπολογιστών >> λογισμικό >> Συμπίεση δεδομένων

Πώς να Zip αρχείων με τη χρήση SharpZipLib

SharpZipLib είναι μια βιβλιοθήκη συμπίεσης αρχείων για C # και άλλες γλώσσες προγραμματισμού NET , παρέχει λειτουργίες για το χειρισμό ZIP, GZIP , TAR και bzip2 μορφές . . Η βιβλιοθήκη διαθέτει ένα πολύ απλό interface , που σας επιτρέπει να συμπιέσετε ένα αρχείο με λίγες μόνο κλήσεις συναρτήσεων . Μετά την κατασκευή το υπόλοιπο του προγράμματός σας - αν υποτεθεί ότι το έργο σας είναι κάτι περισσότερο από μια γραμμή εντολών zipping χρησιμότητα - περιλαμβάνουν τη βιβλιοθήκη SharpZipLib και να δημιουργήσει ένα zipping λειτουργίας, η οποία μπορεί στη συνέχεια να κληθεί από αλλού στον κώδικά σας . Οδηγίες
Η 1

Δημιουργία επικεφαλίδα της συνάρτησης . Θα πρέπει να δούμε κάτι σαν αυτό :

δημόσια στατική άκυρη Zip (string InputFile , string OutputFile )

Αυτό καθορίζει το όνομα της συνάρτησης και τις παραμέτρους . Υποθέτοντας ότι χρησιμοποιείτε τον παραπάνω κωδικό ακριβώς όπως είναι γραμμένο , θα είστε σε θέση να καλέσετε τη λειτουργία , τη συμπίεση ενός συγκεκριμένου αρχείου σε ένα ZIP, όπως αυτό :

Zip ( " image.jpg " , " image.zip " ) ? 2

Ξεκινήστε το σώμα της συνάρτησης , δηλώνοντας τις απαραίτητες μεταβλητές και αντιρρήσεις περιπτώσεις . Θα πρέπει να δούμε κάτι σαν αυτό :

{

FileStream fileStreamIn = νέα FileStream

( InputFile , FileMode.Open , FileAccess.Read ) ?

FileStream fileStreamOut = νέα FileStream

( OutputFile , FileMode.Create , FileAccess.Write ) ?

ZipOutputStream zipStreamOut = νέα ZipOutputStream ( fileStreamOut ) ?

byte [ ] buffer = new byte ?

ZipEntry εισόδου = νέα ZipEntry ( Path.GetFileName ( InputFile ) ) ?

zipOutStream.PutNextEntry ( εισόδου) ?

int μέγεθος ?

Αυτό δημιουργεί δύο FileStreams για τα αρχεία εισόδου και εξόδου , ​​και στη συνέχεια ένα ZipOutputStream με βάση το FileStream εξόδου που μόλις δηλωθεί . Αυτό ακολουθείται από λίγες μεταβλητές για τους αριθμούς χειρισμού στο κρέας της λειτουργίας τον επόμενο , και ένα ζευγάρι για την αποθήκευση διαδρομή του αρχείου εξόδου.
Εικόνων 3

Πληκτρολογήστε το κρέας της λειτουργίας - - ένα " do ... while" που διαβάζει τα δεδομένα και συμπιέζει :

κάνει

{

size = fileStreamIn.Read ( buffer , 0 , ρυθμιστικό . μήκος) ?

zipStreamOut.Write ( buffer , 0 , μέγεθος ) ?

} while ( μέγεθος > 0 ) ?

Αυτό θα ενισχύσει μέσω του αρχείου, ένα byte σε μια εποχή , τη διατροφή των δεδομένων σε λειτουργία " Write " zipStreamOut του . Η διαδικασία θα επαναλαμβάνεται μέχρι να φτάσει στο τέλος του αρχείου και το zipping έχει ολοκληρωθεί .
Η

4 Κλείστε το φερμουάρ και fileStreams , και στο τέλος της λειτουργίας , νοικοκύρεμα πάντα λειτουργία έχει πλέον ολοκληρωθεί και μπορεί να χρησιμοποιηθεί στο πρόγραμμά σας όπως επιθυμείτε .
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα