2015-10-13 84 views
0

我已經在數據庫中存儲了多個文件的Blob。用戶應該能夠點擊一個鏈接,並且應該能夠以zip格式下載所有文件。但在此之前,我想提供一個文件夾結構來對這些文件進行分組。比方說,一個基本文件夾,後面是嵌套文件夾和相關文件。我遵循下面的鏈接,看起來像,我需要先創建一個物理目錄結構爲相同,然後壓縮該結構?Java:目錄中的Db中的Zip文件

http://www.journaldev.com/957/java-zip-example-to-zip-single-file-and-a-directory-recursively

回答

1
在一個zip目錄

文件被抽象爲Java中ZipEntry對象。那些名稱與相對於解壓zip文件的目錄的路徑相對應。壓縮文件中的目錄只是名稱以/結尾的條目。這樣,您也可以將zip文件視爲名稱反映目錄結構的二進制數據條目的普通列表。 所以你不必你的硬盤上創建一個文件夾結構,壓縮它,但你可以直接從數據庫寫入ZipOutputStream

  • 創建的每個文件夾爲ZipEntry沒有內容和結尾的名稱與/
  • 而不是使用FileInputStream從硬盤驅動器上的文件中讀取,直接輸入resultSet.getBinaryStream("blobcolumn")的輸出到條目。
+0

謝謝!所以,要創建一個文件夾,新的ZipEntry(「images /」)。但如何將文件添加到圖像?新的ZipEntry(「圖像/文件名」)? – Forkmohit

+1

是的,確切地說。條目名稱是「文件」的完整相對路徑。 – esel

+0

一切正常! – Forkmohit

相關問題