Android 解压缩文件时FileNotFoundException
我使用下面的代码来解压文件Android 解压缩文件时FileNotFoundException,android,Android,我使用下面的代码来解压文件 public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); String zipFilePath = Environment.getExt
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String zipFilePath = Environment.getExternalStorageDirectory()
.getAbsolutePath();
unpackZip(zipFilePath,"/MyRar.zip");
}
private boolean unpackZip(String path, String zipname)
{
InputStream is;
ZipInputStream zis;
try
{
String filename;
is = new FileInputStream(path + zipname);
zis = new ZipInputStream(new BufferedInputStream(is));
ZipEntry ze;
byte[] buffer = new byte[1024];
int count;
while ((ze = zis.getNextEntry()) != null)
{
// zapis do souboru
filename = ze.getName();
// Need to create directories if not exists, or
// it will generate an Exception...
if (ze.isDirectory()) {
File fmd = new File(path + filename);
fmd.mkdirs();
continue;
}
FileOutputStream fout = new FileOutputStream(path + filename);
// cteni zipu a zapis
while ((count = zis.read(buffer)) != -1)
{
fout.write(buffer, 0, count);
}
fout.close();
zis.closeEntry();
}
zis.close();
}
catch(IOException e)
{
e.printStackTrace();
return false;
}
return true;
}
}
我还在清单文件中添加了
但它显示文件未找到异常
日志:
java.io.FileNotFoundException: /mnt/sdcardMyRar/list.txt: open failed: ENOENT (No such file or directory)
at libcore.io.IoBridge.open(IoBridge.java:406)
at java.io.FileOutputStream.<init>(FileOutputStream.java:88)
at java.io.FileOutputStream.<init>(FileOutputStream.java:128)
at java.io.FileOutputStream.<init>(FileOutputStream.java:117)
at com.example.unzipfile.MainActivity.unpackZip(MainActivity.java:66)
at com.example.unzipfile.MainActivity.onCreate(MainActivity.java:26)
at android.app.Activity.performCreate(Activity.java:4492)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
java.io.FileNotFoundException:/mnt/sdcardMyRar/list.txt:open failed:enoint(没有这样的文件或目录)
在libcore.io.IoBridge.open中(IoBridge.java:406)
位于java.io.FileOutputStream。(FileOutputStream.java:88)
位于java.io.FileOutputStream。(FileOutputStream.java:128)
位于java.io.FileOutputStream。(FileOutputStream.java:117)
位于com.example.unzipfile.MainActivity.unpacip(MainActivity.java:66)
位于com.example.unzipfile.MainActivity.onCreate(MainActivity.java:26)
位于android.app.Activity.performCreate(Activity.java:4492)
位于android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)上
现在您的目录是:/mnt/sdcardMyRar/
检查目录,它不正确
检查以下建议:
String zipFilePath = Environment.getExternalStorageDirectory()
.getAbsolutePath() + "/";
现在您的目录是:
/mnt/sdcardMyRar/
检查目录,它不正确
检查以下建议:
String zipFilePath = Environment.getExternalStorageDirectory()
.getAbsolutePath() + "/";
你错过了一个/。。。(提示:
path+filename
)请注意,我们更喜欢这里的技术风格。我们轻轻地劝阻问候,希望你能帮助,谢谢,提前感谢,感谢信,问候,亲切的问候,签名,请你能帮助,闲聊的材料和缩写的txtspk,恳求,你被困多久了,投票建议,元评论等。只需解释你的问题,并展示你已经尝试了什么,你期望什么,事实上,HalfFo.OK,我肯定会在我即将到来的线程中考虑…谢谢。你错过了一个/。。。(提示:path+filename
)请注意,我们更喜欢这里的技术风格。我们轻轻地劝阻问候,希望你能帮助,谢谢,提前感谢,感谢信,问候,亲切的问候,签名,请你能帮助,闲聊的材料和缩写的txtspk,恳求,你被困多久了,投票建议,元评论等。只需解释你的问题,并展示你已经尝试了什么,你期望什么,事实上,HalfFo.OK,我肯定会在我即将到来的线程中考虑…非常感谢。