Как читать файлы из архива:

java.util.zip пакет предоставляет возможность чтения / записи Zip файлов.

Пример ниже показывает список файлов, содержащихся в Zip файл и читает первую строку файла.


import java.io.*;

import java.util.zip.*;



class  readZipFiles 

{

    public static void main(String[] args

    {

         if (args.length != 1

        {

            System.out.println("Usage: java testFiles [zipfile path] ");

            return;

        }

        try

        {

            String filename = args[0];

            readZipFiles list = new readZipFiles( );

            list.readZipFiles(filename);

        }

        catch (Exception e)

        {

            e.printStackTrace();

        }

    }



    public void readZipFiles(String filename)

    {

        try

        {

            byte[] buf = new byte[1024];

            ZipInputStream zipinputstream = null;

            ZipEntry zipentry;

            zipinputstream = new ZipInputStream(

                 new FileInputStream(filename));



            zipentry = zipinputstream.getNextEntry();

            while (zipentry != null

            

                //for each entry to be extracted

                String entryName = zipentry.getName();

                System.out.println("File ::"+entryName);

                RandomAccessFile  rf;

                File newFile = new File(entryName);

                String directory = newFile.getParent();



                if(directory == null)

                {

                    if(newFile.isDirectory())

                        break;

                }



                rf = new RandomAccessFile(entryName,"r");               

                String line;



                if ((line =rf.readLine()) !=null)

                {

                    System.out.println(line);

                }



                rf.close()

                zipinputstream.closeEntry();

                zipentry = zipinputstream.getNextEntry();



            }//while



            zipinputstream.close();

        }

        catch (Exception e)

        {

            e.printStackTrace();

        }

    }

}

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>