如何将字符串转换为GZIP Base64字符串?

liamzebedee:

我一直在尝试使用GZIPOutputStream等,但在理解它们方面没有成功。我要做的就是将字符串- “字符串”转换为GZIP Base64格式。我怎样才能做到这一点?

编辑:通过GZIP Base64格式,我的意思是字符串首先使用GZIP压缩,然后转换为Base64

丹·克鲁兹:

使用Apache Commons Codec Base64OutputStream

这是一个示例类:

import java.util.zip.GZIPOutputStream;
import org.apache.commons.codec.binary.Base64OutputStream;

public class Test {
    public static void main(String[] args) {
        String text = "a string of characters";
        try {
            Base64OutputStream b64os = new Base64OutputStream(System.out);
            GZIPOutputStream gzip = new GZIPOutputStream(b64os);
            gzip.write(text.getBytes("UTF-8"));
            gzip.close();
            b64os.close();
        } catch (Throwable t) {
            t.printStackTrace();
        }
    }
}

哪个输出:

H4sIAAAAAAAAAEtUKC4pysxLV8hPU0jOSCxKTC5JLSoGAOP+cfkWAAAA

在Linux下,您可以通过以下方法确认是否可以使用:

echo 'H4sIAAAAAAAAAEtUKC4pysxLV8hPU0jOSCxKTC5JLSoGAOP+cfkWAAAA' | base64 -d | gunzip

(请注意,在OSX上,您应该使用base64 -D而不是base64 -d上面的命令)

哪个输出:

a string of characters

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章