質問

I am trying to create ".zip" file from byte array but the error given appear everytime I am attempt to open it. Here is the code:

import java.io.ByteArrayOutputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.PrintWriter;

public class ReadTxtFile {

public static void BinFileContToBinArr(String path) throws Throwable{
    BufferedReader inputStream = null;
    PrintWriter outputStream = null;

    try{
        String el = null;
        ByteArrayOutputStream baos = new ByteArrayOutputStream();

        inputStream = new BufferedReader(new FileReader(path));
        FileOutputStream  fos = new FileOutputStream("D:/texttNE22W.zip");
        while((el=inputStream.readLine()) != null){
            baos.write(el.getBytes());
        }
        byte[] b = baos.toByteArray();
        for(int i = 0; i<b.length; i++){
            System.out.print((char)b[i] + " ");
        } 
        fos.write(b);           
    } 
    finally{
        if (inputStream!=null){
            inputStream.close();
        }
        if(outputStream!=null){
            outputStream.close();
        }           
    }
}

public static void main(String[] args) throws Throwable {
    String path = "D:/text.txt";
    BinFileContToBinArr(path);

}
}

I've made a research but didn't find a solution. Also, I tried to create a ".txt" file and it works. The only problem is when it comes to creating a ".zip".

Thank you beforehand ! By the way, if someone have encountered this problem before, feel free to vote up or leave me a comment if you wish, because I am interested if it is a common mistake.

役に立ちましたか?

解決

You need to use ZipOutputStream instead of FileOutputStream.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top