私がやりたいのは、ファイルを暗号化して圧縮し、デバイスのSDカードに保存することです。
以前に生ファイルや圧縮を使用したことがないため、どこから始めればよいかわかりません。
Androidでもできる?4.0.3 を使用していますが、1 GB のフォルダのように圧縮できますか? それとも、それらを扱いやすいチャンクに分割する必要がありますか?
何か案は?
ZipInputStreamおよびZipOutputストリームを使用して、読み取り/書き込みZipファイルを作成できます。Java docページには、読み取りと書き込みの両方のサンプルコードもあります。また、暗号化/復号化にAndroid暗号化ライブラリを使用できます。
import java.io.*;import java.util.zip.*;
public class Zip {
public static void main(String[] arg)
{
String[] source = new String[]{"C:/Users/MariaHussain/Desktop/hussain.java","C:/Users/MariaHussain/Desktop/aa.txt"};
byte[] buf = new byte[1024];
try {
String target = "C:/Users/MariaHussain/Desktop/target1.zip";
ZipOutputStream out = new ZipOutputStream(new FileOutputStream(target));
for (int i=0; i<source.length; i++) {
FileInputStream in = new FileInputStream(source[i]);
// Add ZIP entry to output stream.
out.putNextEntry(new ZipEntry(source[i]));
// Transfer bytes from the file to the ZIP file
int len;
while ((len = in.read(buf)) > 0) {
out.write(buf, 0, len);
}
// Complete the entry
out.closeEntry();
in.close();
}
// Complete the ZIP file
out.close();
} catch (IOException e) {
}
}
}