Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在android中解压缩时发生java.io.FileNotFoundException_Java_Android_Java Io - Fatal编程技术网

在android中解压缩时发生java.io.FileNotFoundException

在android中解压缩时发生java.io.FileNotFoundException,java,android,java-io,Java,Android,Java Io,我正在尝试解压缩一个zip文件。此文件包含其他几个文件。我使用的方法是: private void unzipFile(String inputFileName,String outputDirName){ int dataCount=0; byte[] dataArr=null; File inputZipFile=null,targetDir=null,unzipFile=null; ZipInputStream zipIPStream=null; Z

我正在尝试解压缩一个zip文件。此文件包含其他几个文件。我使用的方法是:

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)

请参阅下面的链接下载和解压缩zip文件,它将解决您的问题

下载Zip文件:-

对于解压缩Zip文件:-

有关解决此问题的更多信息,请参阅下面的链接


zip文件是使用winrar软件制作的,否则会出现上述错误。

请参阅下面的链接下载和解压缩zip文件,这将解决您的问题

下载Zip文件:-

对于解压缩Zip文件:-

有关解决此问题的更多信息,请参阅下面的链接


zip文件是使用winrar软件制作的,否则会出现上述错误。

错误发生在哪一行?它似乎试图将这个.jpg作为一个不正确的目录来读取..似乎.jpg不是一个目录.我得到了解决方案。我试图在保存该文件的同一目录中解压该文件。我更改了目录,现在方法工作正常。错误发生在哪一行?它似乎试图将这个.jpg作为一个不正确的目录来读取..似乎.jpg不是一个目录.我得到了解决方案。我试图在保存该文件的同一目录中解压该文件。我更改了目录,现在该方法工作正常。@RichaLaad欢迎Richa,这是我的荣幸。@RichaLaad如果您对android有任何疑问,请随时告诉我,或者您也可以通过我的邮件id发送您的查询。这将非常好,因为我是android的初学者。请提供我可以查询的邮件id。@RichaLaad欢迎Richa,这是我的荣幸。@RichaLaad如果您对android有任何疑问,请随时告诉我,或者您也可以通过我的邮件id发送您的查询。这将非常好,因为我是android的初学者。请提供邮件id,我可以将我的查询放在那里。