如何将二进制数据转换为Zip文件?

史密斯·帕特尔(Smit Patel)

现在,我正在进行一项将二进制数据转换为zip文件的任务

我正在呼叫网址,并从服务器收到响应,例如

A @B Ar?E⏾ 7 ϫ f 걺N Yg o_M^ DTUT U?X_ e?hi \ � �ڂ(� �0 rm��'�ed���� �:6h�k�ڗ� ���fnp���7��)��:��N�U�viR�,) II����M Np。 M 7 n !A!))AAFAq)Q).yy f w ʰ 6 32 ƢZZ N0 O { mC $ ,> CW/)? ٥ ߗ d = R J* E {2L ח W _PRR _ @@ _H : Ə Ջ J ^ v 0wo + o --Ä@ R?6? P ( 0 WP?j k C E

现在,我想将此数据保存到zip文件中,我进行了很多搜索并找到了一些链接,但未达到目标。

我在这里做了

OutputStreamWriter osw = new OutputStreamWriter(openFileOutput(
     "products.zip", Context.MODE_PRIVATE));
   osw.write(data);
   osw.close();

如果您对此有任何想法,请指导我。

史密斯·帕特尔(Smit Patel)

我需要做的就是从实体构造一个BufferedInputStream。只需将BufferedReader替换为BufferedInputStream。我建议使用ISO-8859-1。底层的流编码器读取二进制数据会浪费处理能力。

private class methodName extends
            AsyncTask<String, Integer, byte[]> {

        @Override
        protected byte[] doInBackground(String... params) {
            String uri = params[0];
            try {

                MultipartEntityBuilder entity;
                File f;
                FileBody fb;
                entity = MultipartEntityBuilder.create();

                entity.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
                f = new File(zipImageFile);
                fb = new FileBody(f);
                entity.addPart("orderFile", fb);
                HttpClient httpclient = new DefaultHttpClient();
                HttpPost httppost = new HttpPost(uri);
                Log.e("Uploload Missing Image URL", "" + uri);
                httppost.setEntity(entity.build());
                HttpResponse response = httpclient.execute(httppost);
    //              byte[] fileBites=null;
               BufferedInputStream bufferedInputStream;
               ByteArrayOutputStream byteArrayOutputStream;
                byte[] buffer = new byte[5 * 1024];
                int numRead = -1;
                while( (numRead = bufferedInputStream.read(buffer))!= -1)
                {
                    byteArrayOutputStream.write(buffer, 0, numRead);
                }
                byteArrayOutputStream.flush();
                byteArrayOutputStream.close();
                byte[] result = byteArrayOutputStream.toByteArray();

    //              fileBites=stringBuffer.toString().getBytes();
    //              Log.e("FILE BITES", fileBites+"=>"+fileBites.length);



                return ;

    //              return stringBuffer.toString();
            } catch (Exception e) {
                return e.toString().getBytes();
            }

        }

        @Override
        protected void onPostExecute(byte[] result) {
            // TODO Auto-generated method stub
            super.onPostExecute(result);
            Log.e("Response From Server", "" + result);
            writeToFile(result);

        }

    }


    private void writeToFile(byte[] data) {
        try {

            FileOutputStream fop = null;
            File file;

            file = new File(AppConstants.DataPath+"/products.zip");
            fop = new FileOutputStream(file);

            // if file doesnt exists, then create it
            if (!file.exists()) {
                file.createNewFile();
            }
            try {            
            fop.write(data);

        } catch (IOException e) {
            Log.e("Exception", "File write failed: " + e.toString());
        }
        unzipImage(AppConstants.DataPath + "/products.zip",
                AppConstants.DataPath);
    }catch (Exception E)
    {

    }
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将二进制转换为数据?

来自分类Dev

Odoo 12.如何将二进制文件转换为Zip?

来自分类Dev

如何将列中的二进制数据转换为文件?

来自分类Dev

Javascript:如何将十六进制数据转换为二进制并将其写入文件

来自分类Dev

Javascript:如何将十六进制数据转换为二进制并将其写入文件

来自分类Dev

我如何将8位二进制数据转换为十六进制

来自分类Dev

如何将字符转换为二进制?

来自分类Dev

如何将文本转换为二进制?

来自分类Dev

如何将字符转换为二进制?

来自分类Dev

如何将字母转换为二进制?

来自分类Dev

如何将“单”转换为二进制?

来自分类Dev

如何将二值文本数据转换为二进制(位表示)

来自分类Dev

如何将dsPIC33 HEX文件转换为二进制文件?

来自分类Dev

如何将二进制文件转换为matlab文件?

来自分类Dev

如何将二进制文件转换为numpy文件?

来自分类Dev

如何将 16 位二进制文件转换为 32 位文件?

来自分类Dev

如何将二进制数据从BinaryJS转换为字符串/文本

来自分类Dev

如何将二进制数据帧转换为向量?

来自分类Dev

如何将二进制数据从BinaryJS转换为字符串/文本

来自分类Dev

如何将xml转换为二进制数据

来自分类Dev

如何将机器代码转换为二进制可执行文件?

来自分类Dev

如何将二进制pgdump(压缩)转换为纯SQL文件?

来自分类Dev

如何将二进制私钥文件转换为openssl可接受的pem格式

来自分类Dev

如何将Elixir二进制文件转换为字符串?

来自分类Dev

如何将二进制pgdump(压缩)转换为纯SQL文件?

来自分类Dev

如何将机器代码转换为二进制可执行文件?

来自分类Dev

计算机如何将二进制数据转换为十进制数据

来自分类Dev

如何将一些以 ASCII 0 和 1 表示的二进制文件转换为二进制文件?

来自分类Dev

尝试从 JPEG 二进制数据显示 UIImage(如何将字符串转换为数据)

Related 相关文章

  1. 1

    如何将二进制转换为数据?

  2. 2

    Odoo 12.如何将二进制文件转换为Zip?

  3. 3

    如何将列中的二进制数据转换为文件?

  4. 4

    Javascript:如何将十六进制数据转换为二进制并将其写入文件

  5. 5

    Javascript:如何将十六进制数据转换为二进制并将其写入文件

  6. 6

    我如何将8位二进制数据转换为十六进制

  7. 7

    如何将字符转换为二进制?

  8. 8

    如何将文本转换为二进制?

  9. 9

    如何将字符转换为二进制?

  10. 10

    如何将字母转换为二进制?

  11. 11

    如何将“单”转换为二进制?

  12. 12

    如何将二值文本数据转换为二进制(位表示)

  13. 13

    如何将dsPIC33 HEX文件转换为二进制文件?

  14. 14

    如何将二进制文件转换为matlab文件?

  15. 15

    如何将二进制文件转换为numpy文件?

  16. 16

    如何将 16 位二进制文件转换为 32 位文件?

  17. 17

    如何将二进制数据从BinaryJS转换为字符串/文本

  18. 18

    如何将二进制数据帧转换为向量?

  19. 19

    如何将二进制数据从BinaryJS转换为字符串/文本

  20. 20

    如何将xml转换为二进制数据

  21. 21

    如何将机器代码转换为二进制可执行文件?

  22. 22

    如何将二进制pgdump(压缩)转换为纯SQL文件?

  23. 23

    如何将二进制私钥文件转换为openssl可接受的pem格式

  24. 24

    如何将Elixir二进制文件转换为字符串?

  25. 25

    如何将二进制pgdump(压缩)转换为纯SQL文件?

  26. 26

    如何将机器代码转换为二进制可执行文件?

  27. 27

    计算机如何将二进制数据转换为十进制数据

  28. 28

    如何将一些以 ASCII 0 和 1 表示的二进制文件转换为二进制文件?

  29. 29

    尝试从 JPEG 二进制数据显示 UIImage(如何将字符串转换为数据)

热门标签

归档