base64编码怎样解码( 二 )


有些地方需要我们去注意一下:
(1)在第三步中,最前面添加了两个0,所以最终编码之后要比之前多出三分之一的大小。
(2)上面的例子中,我们使用的是ASCII编码,但是如果我们使用UTF-8,对应Base64编码的结果是不一样的。
(3)Base64只是进行了编码,方便数据的传输而已。这可不是加密。
原理也搞清楚了,现在我们就实现一下。
三、代码实现你可以自己去实现一个编码解码的完整过程,但是java已经为我们封装好了,我们直接只用别人造好的轮子多好。不管是自己写还是使用别人的,原理搞清楚就OK了。
public class Test { public static void main(String args) throws IOException { String str = "sky"; //编码 BASE64Encoder encoder = new BASE64Encoder(); String encoderResult=encoder.encode(str.getBytes()); System.out.println("编码结果为:" + encoderResult); //解码 BASE64Decoder decoder = new BASE64Decoder(); byte decoderResult=decoder.decodeBuffer(encoderResult); System.out.println("解码结果为:" + new String(decoderResult)); }}//编码结果为:c2t5//解码结果为:sky是不是很简单。其实java实现的方式有很多种,其他的还有Commons Codec和Bouncy Castle。实现的过程和JDK提供的类似,我们只需要导入相应的jar包即可。
Base64算法的应用场景有E-Mail、密钥、证书文件等等。这也只是入门,想要深入了解,可以看一些安全有关的书籍,不过很多都和数学有关,看的实在是难受,曾经看过,可惜没坚持住。惭愧,书到用时方恨少。
OK。有问题还请指正。
听说给我点赞的人第二天中了500万!!!听说给我点赞的人第二天中了500万!!!听说给我点赞的人第二天中了500万!!!
■网友
In : import base64
In : base64.decodestring(\u0026#39;MzEwQzkxN0U2QUIyOTAzOTM5OTNBQUI3NjE0NkY0OTI=\u0026#39;)
Out: \u0026#39;310C917E6AB290393993AAB76146F492\u0026#39;
你都知道是base64了,那随手decode就是了。


推荐阅读