我想解压缩一个分成几部分的文件(file.part1、file.part2、file.part3...)。 我将所有零件放在同一个文件夹中。在互联网上我只找到了如何解压缩单个文件的示例。
有人知道是否有 API 可以做到这一点吗?
最佳答案
据我所知,Android 上的压缩 API 与 Java 相比没有变化。在 Java 中,您可以轻松解压缩多卷文件。我发布了一些 Java 代码,您应该能够通过一些小的(如果有的话)修改在 Android 上运行。
public class Main {
public static void main(String[] args) throws IOException {
ZipInputStream is = new ZipInputStream(new SequenceInputStream(Collections.enumeration(
Arrays.asList(new FileInputStream("test.zip.001"), new FileInputStream("test.zip.002"), new FileInputStream("test.zip.003")))));
try {
for(ZipEntry entry = null; (entry = is.getNextEntry()) != null; ) {
OutputStream os = new BufferedOutputStream(new FileOutputStream(entry.getName()));
try {
final int bufferSize = 1024;
byte[] buffer = new byte[bufferSize];
for(int readBytes = -1; (readBytes = is.read(buffer, 0, bufferSize)) > -1; ) {
os.write(buffer, 0, readBytes);
}
os.flush();
} finally {
os.close();
}
}
} finally {
is.close();
}
}
}
该代码来自一个较旧的 SO 问题,可以在 here 中找到。 .
关于Android:如何解压缩分成几部分的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11766902/