2009-10-28 64 views
1

我在網上看到了混合結果,但是有沒有一種方法可以在BB上以編程方式提取zip文件?非常基本的我的應用程序將顯示不同的加密文件類型,並且這些文件以壓縮文件形式提供。我的想法是讓用戶瀏覽SDCard上的文件,選擇它,然後從文件中提取我需要的流。這可能嗎?Blackberry - 以編程方式提取/打開zip文件

回答

2

使用GZIPInputStream

例子:

try 
    { 
     InputStream inputStream = httpConnection.openInputStream(); 
     GZIPInputStream gzis = new GZIPInputStream(inputStream); 
     StringBuffer sb = new StringBuffer(); 

     char c; 
     while ((c = (char)gzis.read()) != -1) 
     { 
      sb.append(c); 
     } 

     String data = sb.toString(); 

     gzis.close(); 
    } 
    catch(IOException ioe) 
    { 
    } 
+0

感謝您的代碼示例。我會試一試。仍收集想法和研究,但這段代碼看起來類似於我使用Java 1.5的windows/mac應用程序(僅在BB中使用ZipEntry和ZipFile類) – KKlucznik 2009-10-28 19:52:27

1

只是兩件事情:

  • 在BB API也有隻gzip和支持zlib,沒有多個文件壓縮的​​支持,所以它不是可能壓縮幾個文件並只提取其中的一個。
  • 了我的經驗,這樣的功能將飛行模擬器上,但可能是真實設備上真正性能殺害

How to retrieve data from a attached zip file in Blackberry application?

PS其實你可以自定義實現多項目流和解壓縮後解析它,但這似乎是無用的,如果你想在其他應用程序中支持這種存檔格式。

+0

感謝您的信息。我不知道它只支持這些類型,並且看着它們,你是絕對正確的。無法提取一個文件,效率非常低。你知道任何可以添加到BB應用程序來執行此類提取的第三方庫嗎? – KKlucznik 2009-10-29 15:18:23

+0

歡迎您!我沒有聽說過替代品。我建議你搜索j2me壓縮庫,首選開源。 – 2009-10-29 15:22:00