私は昨日始めたばかりのJavaにまったく慣れていません。私は実践による学習の大ファンなので、それを使って小さなプロジェクトを作成しています。しかし、私はこの部分で立ち往生しています。この関数を使用してファイルを作成しました:
public static boolean writeZippedFile(File destFile, byte[] input) {
try {
// create file if doesn't exist part was here
try (OutputStream out = new DeflaterOutputStream(new FileOutputStream(destFile))) {
out.write(input);
}
return true;
} catch (IOException e) {
// error handlind was here
}
}
上記の方法を使用して圧縮ファイルを正常に書き込んだので、それをコンソールに読み返したいと思います。まず、解凍されたコンテンツを読み取り、そのコンテンツの文字列表現をコンソールに書き込めるようにする必要があります。\0
ただし、最初のヌル文字まで文字を書きたくないという2番目の問題があります。圧縮ファイルを読み取ろうとする方法は次のとおりです。
try (InputStream is = new InflaterInputStream(new FileInputStream(destFile))) {
}
私はここで完全に立ち往生しています。問題は、「\0」までの最初の数文字を破棄し、解凍されたファイルの残りをコンソールに書き込む方法です。