Java实现将字符串进行Base64跟GZip结合解密 Java实现Base64 + GZIP解密处理并且输出明文字符

Posted Acmen-zym

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java实现将字符串进行Base64跟GZip结合解密 Java实现Base64 + GZIP解密处理并且输出明文字符相关的知识,希望对你有一定的参考价值。

解密前的字符: H4sIAAAAAAAEAH1RzUrDMAB+lZHzNvKftLeyTfB3Y5vooVCyNRvFrS1deqhj4NWLZ8HH8KKgbzMU38I0RRgiQsjh++P7ki04joFPGUQIIi4pwZwTIttgmuXJHPjAqGymssgUKtbRtL5HqjCraqwXZRqDNhiVsyDPT3VlxQhTT3iINvA0WWsLYohxB4oOpC3k+VT6rOaHpVlmSbr8LWItBH1IG9HlRhd1P4yhRNAWY5iKBr5I5jfW9/n0Zs/+/fnr7t4aellqdGossQ3BrKx0EaVWGAI/tOUI/Xh82L+8hqD9w2a5TqMyiZ0iCAYY68UkCE6O1reBXIvJdXF1PnH6PNuYaKG1U8IuhA5NnJUTgTDiGBImLKjTODJ2l2UQZ9wjjBACIaxTVLW2BV2I9Lpek5K5FCyIlBQzzITHJGeCY8tt9Gp1OONwsTObKm9KLUtVKLtfN7/VkP8lG2XKjbNOx0F/EPXOhpNBPwQ7+5J9ZVQS/2ndfQMNovdiNQIAAA==

  /**
     * 传入字符串解密base64和GZip
     *
     * @param input 需要解密的字符
     * @return 解密后的字符串
     */
    public static String decodeBase64AndGZip(String input) 
        byte[] bytes;
        String out = input;

        try (ByteArrayInputStream bis = new ByteArrayInputStream(Base64.getDecoder().decode(input));
             GZIPInputStream gzip = new GZIPInputStream(bis);
             ByteArrayOutputStream bos = new ByteArrayOutputStream()) 
            byte[] buf = new byte[1024];
            int num;
            while ((num = gzip.read(buf, 0, buf.length)) != -1) 
                bos.write(buf, 0, num);
            
            bytes = bos.toByteArray();
            out = new String(bytes, StandardCharsets.UTF_8);
            bos.flush();
         catch (IOException e) 
            e.printStackTrace();
        
        return out;
    

以上是关于Java实现将字符串进行Base64跟GZip结合解密 Java实现Base64 + GZIP解密处理并且输出明文字符的主要内容,如果未能解决你的问题,请参考以下文章

Java实现将字符串进行Base64跟GZip结合解密 Java实现Base64 + GZIP解密处理并且输出明文字符

Gzip压缩与解压

Vue结合element ui 实现图片上传可预览,可删除,以base64字符串上传到服务器

如何在 Java 中加速读写 base64 编码的 gzip 大文件

java实现将图片读取成base64字符串,将base64字符串存储为图片。

JS gzip加密字符串并base64输出