我有一个由我的 Android 应用程序在平板电脑上创建的 zip 文件,我稍后也用于测试。我可以在 Android 平板电脑和我的 PC 上打开它,即它没有损坏。我将此 .zip 文件添加到我的 Android 测试项目的 /res/raw 文件夹中。现在我想将我的一个 junit 测试用例的这个文件复制到 Android 设备。为此,我使用以下代码:
boolean success = false;
File appDirectory = MainActivity.getContext().getExternalFilesDir(null);
File pictureSketch = new File(appDirectory, sketchName+".zip");
if (!appDirectory.exists()) {
assertTrue("App directory could not be created.",appDirectory.mkdirs());
}
InputStream in = activity.getResources().openRawResource(raw.pictest);
FileOutputStream out = new FileOutputStream(pictureSketch);
byte[] buff = new byte[1024];
int read = 0;
try {
while ((read = in.read(buff)) > 0) {
out.write(buff, 0, read);
}
} finally {
in.close();
out.close();
success = true;
}
return success;
已创建具有正确文件的 zip 文件,但打开时会显示错误消息:损坏的 zip 文件。我应该改变什么才能在传输后打开 zip 文件?