2012-10-22 26 views
0

我想解壓zip文件。該文件包含我正在使用其他幾個files.The方法是:在android中解壓出現java.io.FileNotFoundException異常

private void unzipFile(String inputFileName,String outputDirName){ 
    int dataCount=0; 
    byte[] dataArr=null; 
    File inputZipFile=null,targetDir=null,unzipFile=null; 
    ZipInputStream zipIPStream=null; 
    ZipEntry zipEntry=null; 
    BufferedOutputStream bfrOPStream=null; 
    FileOutputStream unzipOPStream=null; 
    try{ 
     inputZipFile=new File(inputFileName); 
     targetDir=new File(outputDirName); 
     zipIPStream=new ZipInputStream(new BufferedInputStream(new FileInputStream(inputZipFile))); 
     while((zipEntry=zipIPStream.getNextEntry())!=null){ 
      dataArr=new byte[2048]; 
      // zipEntry=zipIPStream.getNextEntry(); 
      System.out.println("ZipEntry:"+zipEntry.getName()); 
      unzipFile=new File(targetDir.getAbsolutePath()+"/"+zipEntry.getName()); 
      System.out.println("Checking the path:"+unzipFile.getPath()); 
      if(!unzipFile.getParentFile().exists()){ 
       unzipFile.getParentFile().mkdirs(); 
      } 
      unzipOPStream=new FileOutputStream(targetDir.getPath()+"/"+zipEntry.getName()); 
      bfrOPStream=new BufferedOutputStream(unzipOPStream,2048); 
      while((dataCount=zipIPStream.read(dataArr,0,2048))!=-1){ 
      unzipOPStream.write(dataArr,0,dataCount); 
      } 
      unzipOPStream.flush(); 
      unzipOPStream.close(); 
     } 
    }catch(IOException ioe){ 
     ioe.printStackTrace(); 
    }catch(Exception e){ 
     e.printStackTrace(); 
    }finally{ 
     if(zipIPStream!=null){ 
      try{ 
       zipIPStream.close(); 
      }catch(Exception e){ 

      } 
     } 
    } 
} 

方法拋出以下錯誤

10-22 13:33:09.896: W/System.err(446): java.io.FileNotFoundException: /mnt/sdcard/iR/testbook/Caterpillar-Insect-Animal-Macro-HD-600x375.jpg (Not a directory) 
+0

哪行發生錯誤?它似乎試圖讀取這個.jpg作爲一個不正確的目錄.. –

+0

似乎.jpg不是一個目錄。 – njzk2

+0

我得到了解決方案。我試圖在保存文件的同一目錄下解壓縮文件。我改變了目錄,現在方法工作正常。 –

回答

1

請參閱以下鏈接下載並解壓縮zip文件,它會解決你的問題。

用於下載Zip文件: -

Download Zip File

對於提取Zip文件: -

Extract Zip File

,看看下面的鏈接瞭解更多信息來解決這個問題。

Download and Extract Zip File in Android

而且zip文件是使用winrar軟件只否則這會給你上述錯誤。

+0

感謝Dipak的幫助。 –

+0

@RichaLaad歡迎Richa,這是我的榮幸。 –

+0

@RichaLaad如果您有任何有關android的查詢,請隨時告訴我,或者您也可以通過我的郵件ID發送您的查詢。 –

相關問題