我有两个用Java编写的应用程序,它们通过网络使用XML消息相互通信.我在接收端使用SAX解析器从消息中取出数据.其中一个要求是将二进制数据嵌入XML消息中,但SAX不喜欢这样.有谁知道如何做到这一点?
更新:我使用apache commons编解码器库中的Base64类,以防其他人尝试类似的东西.
我使用以下代码来压缩和解压缩字符串数据,但我面临的问题是,它很容易被压缩而没有错误,但解压缩方法会引发跟随错误.
线程"main"中的异常java.io.IOException:不是GZIP格式
public static void main(String[] args) throws Exception {
String string = "I am what I am hhhhhhhhhhhhhhhhhhhhhhhhhhhhh"
+ "bjggujhhhhhhhhh"
+ "rggggggggggggggggggggggggg"
+ "esfffffffffffffffffffffffffffffff"
+ "esffffffffffffffffffffffffffffffff"
+ "esfekfgy enter code here`etd`enter code here wdd"
+ "heljwidgutwdbwdq8d"
+ "skdfgysrdsdnjsvfyekbdsgcu"
+"jbujsbjvugsduddbdj";
System.out.println("after compress:");
String compressed = compress(string);
System.out.println(compressed);
System.out.println("after decompress:");
String decomp = decompress(compressed);
System.out.println(decomp);
}
public static String compress(String str) throws Exception {
if (str == null || str.length() == 0) {
return str;
}
System.out.println("String length : " + …
Run Code Online (Sandbox Code Playgroud)