Java ZipFile 初窺

可以在不經過解壓文件的情況下,直接讀取壓縮文件內文件內容。


		ZipFile zip = new ZipFile(fileName);
		for (Enumeration<? extends ZipEntry> entries = zip.entries(); entries.hasMoreElements();) {
			ZipEntry entry = entries.nextElement();
			String zipEntryName = entry.getName();
			long size = entry.getSize();

			System.out.println("name = " + zipEntryName + ", size = " + size);

			BufferedReader br = new BufferedReader(new InputStreamReader(zip.getInputStream(entry), "unicode"));
			String line = br.readLine();
			while (line != null) {
				System.out.println(line);
				line = br.readLine();
			}
		}
		zip.close();

ps:示例代碼中沒有判斷文件是否爲目錄;

ps2:打開文件時需要使用正確的文件字符集,否則可能文件內容無法正確識別;

ps3ZipFile在使用後需要關閉,否則當需要打開多個壓縮文件時可能出現緩存異常;


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章