如何将字符串转换为GZIP Base64字符串?
我一直在尝试使用 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
以上是 如何将字符串转换为GZIP Base64字符串? 的全部内容, 来源链接: utcz.com/qa/425740.html