• 0
m1m6

كيفية ضغط الملفات بصيغة ZIP بالجافا - How To Compress Files In ZIP Format

سؤال

 
بسم الله الرحمن الرحيم
 
السلام عليكم ورحمة الله وبركاته
 
 
في هذا المثال سنوضح كيفية ضغط الملفات بصيغة ZIP باستخدام الجافا  .
 
حتى نقوم بتطبيق هذا المثال يجب ان نقوم بتطبيق الخطوات التالية :
 
1- إنشاء كائن من FileOutputStream  , لاستخدامه في الكتابة على الملف المراد ضغطه .
2- إنشاء كائن من ZipOutputStream , لاستخدامه في فلترة الملفات المراد ضغطها .
3- إنشاء كائن من File .
 
 
* لكل ملف نريد اضافته الى الملف المضغوط , نقوم بإنشاء كائن من FileInputStream  حتى تتم القراءة من الملف , وانشاء كائن من ZipEntry حتى يقوم بكتابة محتوى الملفات الى الملف المخرج (ZIP) .
 
في هذا المثال
يقوم البرنامج بقراءة الملف Ubuntu.ico ومن ثم ضغطه وتخزينه باسم ملف جديد وهو mynewfile.zip
 
package test;import java.io.FileInputStream;import java.io.FileOutputStream;import java.util.zip.ZipEntry;import java.util.zip.ZipOutputStream;public class Test{    public static void main( String[] args )    {          byte [] buf=new byte[1024];        try{                   FileOutputStream fos=new FileOutputStream("e:\\mynewfile.zip");            ZipOutputStream zoss=new ZipOutputStream(fos);            ZipEntry zi=new ZipEntry("Ubuntu.ico");// هنا يجب كتابة اسم الملف             zoss.putNextEntry(zi);            FileInputStream fis=new FileInputStream("e:\\Ubuntu.ico");                       int len;                       while((len=fis.read(buf))>0)            {                zoss.write(buf,0,len);            }                       fis.close();            zoss.closeEntry();            zoss.close();            System.out.println("Done");                   }catch(Exception e)        {            e.printStackTrace();        }     }}

 

http://java3r.blogspot.com/2014/01/zip-1-fileoutputstream.html

2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

2 إجابة على هذا السؤال .

  • 0

معلومة جميلة لكن ما مدى الضغط الذي تقدمه؟؟

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

هل من الممكن ضغط اكثر من ملف بنفس الوقت

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .