我的程序里要实现这样的功能:将一个文件夹下的若干文件压缩成一个***.zip文件,然后把该文件转换成字节流保存到文本文件中。现在我已经能够将文件压缩成.zip文件,但是怎样将这个.zip文件转换成字节流呢?在网上找了好半天,没有得到什么答案,望各位高手指点。谢谢!

解决方案 »

  1.   

    把zip文件当作一般的txt文件处理好了
      

  2.   

    是去像读txt文件一样去读.zip文件么?能说详细点么?谢谢!
      

  3.   

    File file=new File("hh.zip");
    FileInputStream fos=new FileInputStream(file);
     byte[] buf=new byte[2048];
       int num=fos.read(buf);
     while(num!=(-1)){
                          doc.write(buf,0,num);                      doc.flush();
                          num=fos.read(buf);               }
    这个可以吗?
      

  4.   

    zip文件不是文本文件
    文本文件是字符流,不是字节流楼主的思想不大明白
      

  5.   

    对zip的访问好像比直接访问文本文件还多了一层流的包装;俺居然忘记了,查查喽
      

  6.   

    我的意思是把若干个文本文件压缩后得到的.zip文件转换一下,主要是想把转换后的结果存储到文本文件中。
      

  7.   

    关键是zip文件不是文本文件呀?
    这种转换有什么意思?
      

  8.   

    我想把转换后的东西用Base64编码后,用XML进行通讯。
      

  9.   

    那是可以呀
    把字节流转换成字符流(使用Base64编码)是可行的呀
      

  10.   

    byte[] fileBytes = null;//destination byte[]
    ...
                FileInputStream is = new FileInputStream(file);
                fileBytes = new byte[(int) file.length()];
                is.read(fileBytes, 0, (int) file.length());你既然已经转为zip的byte[]了,我觉得是否不需要base64编码了
      

  11.   

    楼主应该提提这个功能是想实现什么的?用XML进行通讯?最好说下具体的场景