zip

Search file in a zip file

This is an example of how to search a File in a zip file, using the ZipFile class. Searching a File in a zip file implies that you should:

  • Create a new ZipFile and open it for reading.
  • Get the enumeration of the ZipFile entries, with entries() API method of ZipFile and iterate through each one of them.
  • For each one of the entries, get its name, with getName() API method of ZipEntry.
  • If the name is equal to the name of the file we are searching, then return true, else false.
  • Close the ZipFile, with close() API method of ZipFile.

Let’s take a look at the code snippet that follows:

package com.javacodegeeks.snippets.core;

import java.io.IOException;
import java.util.Enumeration;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;

public class SearchFileInAZipFile {
	
	public static void main(String[] args) {
		
		String searchFile = "seek.txt";
		
		ZipFile zipFile = null;
		
		boolean fileFound = false;

		try {
			
			// open a zip file for reading
			zipFile = new ZipFile("c:/archive.zip");

			// get an enumeration of the ZIP file entries
			Enumeration<? extends ZipEntry> e = zipFile.entries();

			while (e.hasMoreElements()) {
				
				ZipEntry entry = e.nextElement();

				// get the name of the entry
				String entryName = entry.getName();
				
				if (entryName.equalsIgnoreCase(searchFile)) {
					fileFound = true;
					break;
				}

			}

		}
		catch (IOException ioe) {
			System.out.println("Error opening zip file" + ioe);
		}
		 finally {
			 try {
				 if (zipFile!=null) {
					 zipFile.close();
				 }
			 }
			 catch (IOException ioe) {
					System.out.println("Error while closing zip file" + ioe);
			 }
		 }

		System.out.println("File found: " + fileFound);
		
	}

}

 
This was an example of how to search a File in a zip file in Java.

Byron Kiourtzoglou

Byron is a master software engineer working in the IT and Telecom domains. He is an applications developer in a wide variety of applications/services. He is currently acting as the team leader and technical architect for a proprietary service creation and integration platform for both the IT and Telecom industries in addition to a in-house big data real-time analytics solution. He is always fascinated by SOA, middleware services and mobile development. Byron is co-founder and Executive Editor at Java Code Geeks.
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Comments
Inline Feedbacks
View all comments
Back to top button