Java 使用apachecommons对消息进行编码
我正在尝试对一些消息进行Base64编码,然后对消息进行URL编码,并将整个编码内容作为参数/值传递给querystring。 所以我想使用base64编码,然后使用URL编码。我看到apache为它提供了很好的库 因此,在以下apache方法中: 1) 如何查看我要使用的方法1)、2)和3) 2) 在下面的方法1中,使用特定字符集编码意味着仅使用选定字符集编码?1和3的区别是什么?哪个更安全??? 2) 我首先使用base64,这是否意味着我将只获得字节数组作为输出,因此我应该只使用方法2 URLCodec url=新的URLCodec() 1) 编码(str,charset) 2) 编码(字节)Java 使用apachecommons对消息进行编码,java,javascript,apache,encoding,apache2,Java,Javascript,Apache,Encoding,Apache2,我正在尝试对一些消息进行Base64编码,然后对消息进行URL编码,并将整个编码内容作为参数/值传递给querystring。 所以我想使用base64编码,然后使用URL编码。我看到apache为它提供了很好的库 因此,在以下apache方法中: 1) 如何查看我要使用的方法1)、2)和3) 2) 在下面的方法1中,使用特定字符集编码意味着仅使用选定字符集编码?1和3的区别是什么?哪个更安全??? 2) 我首先使用base64,这是否意味着我将只获得字节数组作为输出,因此我应该只使用方法2
3) url.encode(str) 这个测试应该很清楚
String s1 = "test";
System.out.println(s1);
Base64 base64 = new Base64();
String s2 = base64.encodeAsString(s1.getBytes());
System.out.println(s2);
URLCodec url = new URLCodec();
String s3 = url.encode(s2);
System.out.println(s3);
s2 = url.decode(s3);
System.out.println(s2);
s1 = new String(base64.decode(s2));
System.out.println(s1);
输出
test
dGVzdA==
dGVzdA%3D%3D
dGVzdA==
test
顺便说一句,您可以使用标准的java.net.urlcoder/java.net.urldecover和javax.bind.DatatypeConverted类执行相同的操作谢谢Evgeniy。。。帮助。。。但是我能知道为url编码指定字符集的优点/缺点吗???