1
Androidでzipを圧縮しようとしていますが、動作しません。それはサイズが3KBのzipフォルダを作成しますが、それだけです。私は何を間違っているのですか?Androidで圧縮できない
public static void compress(String infile, String outfile){
try {
BufferedInputStream origin = null;
FileOutputStream dest = new FileOutputStream(outfile);
ZipOutputStream out = new ZipOutputStream(new BufferedOutputStream(dest));
byte data[] = new byte[BUFFER];
File f = new File(infile);
Log.d(TAG, "Only one file found");
FileInputStream fi = new FileInputStream(f);
Log.d(TAG, "File Input Stream available " + fi.available());
origin = new BufferedInputStream(fi, BUFFER);
ZipEntry entry = new ZipEntry(infile);
int count;
out.putNextEntry(entry);
while((count = origin.read(data, 0, BUFFER)) != -1) {
out.write(data, 0, count);
}
origin.close();
out.close();
} catch(Exception e) {
e.printStackTrace();
}
}
そして、私の呼び出し元の関数は、念のために、私はcloseEntryを追加したいこの
String outFile="/sdcard/CPTA/test.zip";
String inFile="/sdcard/CPTA/iso_3166-1_list_en.xml";
ZipUtility.compress(inFile, outFile);
コードは正常です。 3KBの出力が間違っていますか? 'unzip -l/sdcard/CPTA/test.zip'を実行し、ファイルがそこにあるかどうか確認してください。 –
私はWindows ZIPシステムとそれが空の組み込みでそれを開いた。 – minhaz
空のzipファイルは3KBよりはるかに小さくする必要があります。そのファイルにはほかに何が入っていますか? –