چگونگي فشرده سازي فايل ها در جاوا

سايت مرجع زبان برنامه نويسي جاوا                                       Java.TadbirPoya.ir> Articles> Java SE> Java IO> How To Zip Files in java 

 چگونه مي توان يك فايل Zip در جاوا ايجاد نمود؟

 

 

تکنولوژيهای جاوا
Java SE
Java EE
Java ME
JasperReports

 

لينك هاي مفيد
تدبيرگران پوياپرداز
دانلود هاي جاوا
آموزش جاوا
بازگشت
خانه

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 شماره مقاله  :   38

      تاريخ ايجاد :      1388/05/25

        تاريخ ويرايش :   1388/05/25

        دفعات بروز رساني :    0 

  نويسنده : سيد علي عبدالهي پور

 

  چگونه در جاوا مي توان فايل ها را Zip نمود؟

 

يكي از نكات جالب و مورد علاقه برنامه نويسان، اضافه كردن امكان توليد فايل هاي فشرده يا فايل هاي Zip مي باشد. اينكه اين نوع از فايل ها چه مزيتي دارند و كاربردشان چيست، به علت آشنايي كليه كاربران نيازي به توضيح ندارد و از آن صرف نظر مي شود. براي ايجاد فايل هاي فشرده در جاوا، كافيست مراحل زير را انجام دهيد.

1- همانطور كه مشخص است، در اين نوع برنامه قرار است با فايل ها كار كنيم و آنها را فشرده نماييم. پس به كتابخانه هاي زير نياز مي باشد:

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

2- براي اضافه كردن امكان فشرده سازي فايل ها در جاوا، به دو كتابخانه زير نياز مي باشد:

import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;

3- در اين مرحله ابتدا بايد يك Zip فايل خالي ايجاد نماييم و در مرحله بعد، يكي يكي فايل ها را فشرده نموده و به آن اضافه نماييم. براي ايجاد چنين فايلي بصورت زير عمل مي نماييم:

FileOutputStream fos = new FileOutputStream("C:\\MyZip.zip");
ZipOutputStream zos = new ZipOutputStream(fos);

دقت كنيد كه خط دوم، شامل كلاس  ZipOutputStream مي باشد كه امكانات فشرده سازي در آن قرار دارد و خط اول فقط نتيجه عمليات اين كلاس را بصورت يك فايل در مسير مورد نظر قرار مي دهد.

4- اكنون كافيست يكي يكي فايل هاي مورد نظر را فشرده كرده و به zos اضافه نماييد. براي انجام اين كار بصورت زير عمل مي نماييم:

ZipEntry ze= new ZipEntry("C:\\file1.txt");
zos.putNextEntry(ze);
zos.closeEntry();

در اين مرحله ابتدا به كمك كلاس  ZipEntry فايل مورد نظر را فشرده مي نماييم. سپس فايل فشرده شده را به كمك متد  putNextEntry به zos اضافه مي نماييم. در پايان هر مرحله فشرده سازي به كمك متد  closeEntry پايان فشرده سازي يك فايل را اعلام كرده و برنامه را براي فشرده سازي فايل بعدي يا توليد Zip فايل نهايي آماده مي نماييم.

 

در ادامه متن برنامه ZipFileWrtExp.java را كه عمل فشرده سازي فايل ها را در جاوا انجام مي دهد، مشاهده مي نماييد.

 

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;

public class ZipFileWrtExp {
   public static void main(String[] args) {

   try {
         FileOutputStream fos = new FileOutputStream("C:\\MyZip.zip");
         ZipOutputStream zos = new ZipOutputStream(fos);
         ZipEntry ze= new ZipEntry("C:\\file1.txt");
         zos.putNextEntry(ze);
         zos.closeEntry();

         ze= new ZipEntry("C:\\file2.txt");
         zos.putNextEntry(ze);
         zos.closeEntry();
         zos.close();
   } catch (FileNotFoundException e) {
         e.printStackTrace();
   } catch (IOException e) {
         e.printStackTrace();
   }
  }
}
 

دانلود برنامه هاي مورد استفاده در اين مقاله

مطالب موجود در اين سايت به جهت ارتقاء سطح علمي برنامه نويسان جاوا تهيه و تنظيم شده است. در صورت تمايل مي توانيد مطالب خود را در جهت اصلاح يا ارتقاء مقالات موجود و يا ايجاد مقالات جديد به آدرس ايميل زير ارسال نماييد.

 JArticles@TadbirPoya.ir

استفاده از مطالب موجود در سايت با ذكر منبع بلامانع است.

Copyright @2008-2009 TadbirPoya.ir Co.All rights reserved