精华内容
下载资源
问答
  • base64encoder

    2017-07-04 14:35:27
    base64encode 包
  • 啥都不说了,CSDN都要30多分,抢钱啊,我着急下载,没有那么多分,对那些...android需要的BASE64Encoder的jar包,欢迎大家下载使用,为什么要5分,是因为,为了下载这么个破jar包,我花干了我的分,也是为了凑够字数。
  • Base64Encoder

    2018-08-27 11:19:06
    Base64是一种能将任意Binary资料用64种字元组合成字串的方法,而这个Binary资料和字串资料彼此之间是可以互相转换的,十分方便。在实际应用上,Base64除了能将Binary资料可视化之外,也常用来表示字串加密过后的内容...
  • 安装了JDK 9以上版本,发现sun.misc.Base64Encoder和sun.misc.Base64Decoder无法使用。找不到导入的包此时将下面的包导入libs中就可以了
  • 主要介绍了解决idea中Springboot找不到BASE64Encoder或Decoder的jar包,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • BASE64EncoderBASE64Decoder的源码
  • sun.misc.BASE64Encoder下载

    2018-09-25 10:40:27
    BASE64Encode 编码,在andorid没有这个编码,这里面有打成jar包,可以导进去。用源代码打包的。手懒不愿意自己弄得话,可以下载导进去。里面附带着源代码,也可将源代码开进去直接使用,希望能帮助大家。
  • base64encoder jar包

    2018-02-12 10:36:08
    java base64encoder jar包 可用MD5加密。亲测可用。。
  • sun.misc.BASE64Encoder.jar

    2018-09-27 16:30:28
    Android端使用com.sun.下面的Base64Encoder加密jar包,简单,实用
  • BASE64Encoder.java和BASE64Decoder.java所有需要的类 包含(BASE64Encoder.java、BASE64Decoder.java、CEFormatException.java、CEStreamExhausted.java、CharacterDecoder.java、CharacterEncoder.java)
  • NULL 博文链接:https://yangxiutian.iteye.com/blog/1739786
  • 1.包含 sun.misc.BASE64加解密源码和jar【源码仅仅几个类而已】 2.完整的sun.misc.BASE64类【直接项目引用即可】
  • 找不到sun.misc.BASE64Encoder 时,导入bcprov-ext-jdk15on-149.jar包就行
  • BASE64Encoder.zip

    2021-09-07 18:09:02
    BASE64Encoder.jar 字符串加密方式 方便使用 亲测有效
  • 主要介绍了java BASE64Encoder详细介绍及简单实例的相关资料,需要的朋友可以参考下
  • apache-commons-codec-1.4.jar和sun.misc.BASE64Encoder.jar和sun.misc.BASE64Decoder.jar
  • java1.8之后BASE64Encoder 就无法使用了 建议直接换成 import java.util.Base64; 然后这样加密 String encode = Base64.getEncoder().encodeToString( "参数".getBytes());

    java1.8之后BASE64Encoder 就无法使用了
    建议直接换成

    import java.util.Base64;
    

    然后这样加密

    		String encode = Base64.getEncoder().encodeToString(
    				"参数".getBytes());
    
    展开全文
  • 一、jdk1.8下的 BASE64EncoderBASE64Decoder(JDK9开始已移除): package com.lmp.utils; import sun.misc.BASE64Decoder; import sun.misc.BASE64Encoder; public class test { public static void main...

    一、jdk1.8下的 BASE64Encoder 和 BASE64Decoder(JDK9开始已移除):

    package com.lmp.utils;
    
    import sun.misc.BASE64Decoder;
    import sun.misc.BASE64Encoder;
    
    public class test {
        public static void main(String[] args) throws Exception {
    
            String str = "hello word";
            BASE64Encoder base64Encoder = new BASE64Encoder();
            // JDK1.8 BASE64Encoder 加密
            String encode = base64Encoder.encode(str.getBytes());
            System.out.println(encode);
    
            BASE64Decoder base64Decoder = new BASE64Decoder();
            // JDK1.8 BASE64Decoder 解密
            byte[] bytes = base64Decoder.decodeBuffer(encode);
            String res = new String(bytes);
            System.out.println(res);
    
        }
    
    }
    
    

    二、推荐使用Base64:

    package com.lmp.utils;
    
    import java.util.Base64;
    
    public class test {
        public static void main(String[] args) throws Exception {
    
            String str = "hello word";
            // JDK1.8 Base64加密
            String encode = Base64.getEncoder().encodeToString(str.getBytes());
            System.out.println(encode);
    
            // JDK1.8 Base64解密
            byte[] bytes = Base64.getDecoder().decode(encode);
            String res = new String(bytes);
            System.out.println(res);
        }
    
    }
    
    

    参考: JDK从1.8升级到9.0.1后sun.misc.BASE64Decoder和sun.misc.BASE64Encoder不可用.

    展开全文
  • 场景:在编码时,密码机密或二进制转换的时候,使用了sun.misc.BASE64Encoder或sun.misc.BASE64Decoder类; 二、因素 使用了sun.misc包下的BASE64Encoder类或BASE64Decoder类。这两个类是sun公司的内部方法,并...

    目录

     

    一、问题

    二、问题原由

    三、问题的解决办法(使用新的替代类)

    四、扩展


    一、问题

    关键词:编译警告“警告: BASE64Decoder是内部专用 API, 可能会在未来发行版中删除”或“警告: BASE64Encoder是内部专用 API, 可能会在未来发行版中删除

    场景:在编码时,密码加密或二进制转换的时候,使用了sun.misc.BASE64Encoder编码或sun.misc.BASE64Decoder解码。

    System.out.println("===============sun.misc.BASE64Encoder|sun.misc.BASE64Decoder=======================");
        //以前使用Base64编码/解码
        final BASE64Encoder encoder = new BASE64Encoder();
        final BASE64Decoder decoder = new BASE64Decoder();
        //编码
        String text = "字符串、Hello, word";
        String encoderText = encoder.encode(text.getBytes());
        System.out.println(encoderText);
        //解码
        try {
          byte[] bytes = decoder.decodeBuffer(encoderText);
          System.out.println(new String(bytes, "UTF-8"));
        } catch (IOException e) {
          e.printStackTrace();
        }

    二、问题原由

    使用了sun.misc包下的BASE64Encoder类或BASE64Decoder类。这两个类是sun公司的内部方法,并没有在java api中公开过,不属于JDK标准库范畴,但在JDK中包含了该类,可以直接使用。java8及后面已经弃用了该类,java9已经移除并有新的替代类。

    三、问题的解决办法(使用新的替代类)

    • 替代方案:下面给出框架中经常使用jar包中的替代类(实际其他jar中也有替代的类),而且这几种替代的类,可以互相解码彼此编码后的字符串。

    1、第一种替代类:jdk1.8的java.util.Base64类

        System.out.println("================jdk1.8:java.util.Base64======================");
        //java8 使用
        Base64.Encoder encoder1 = Base64.getEncoder();
        Base64.Decoder decoder1 = Base64.getDecoder();
        //编码
        String text2 = "字符串、Hello world";
        String encodeValue2 = encoder1.encodeToString(text2.getBytes());
        System.out.println(encodeValue2);
        //解码
        byte[] decode2 = decoder1.decode(encodeValue2);
        try {
          System.out.println(new String(decode2, "UTF-8"));
        } catch (UnsupportedEncodingException e) {
          e.printStackTrace();
        }

    2、第二种替代类:Apache的commons-codec的org.apache.commons.codec.binary.Base64类

        System.out.println("================Apache:commons-codec:org.apache.commons.codec.binary.Base64======================");
        final org.apache.commons.codec.binary.Base64 base64 = new org.apache.commons.codec.binary.Base64();
        String text1 = "字符串、Hello, word";
        //编码
        byte[] bytes = base64.encode(text1.getBytes());
        System.out.println(bytes);
        String encodeValue = base64.encodeToString(text1.getBytes());
        System.out.println(encodeValue);
        //解码
        byte[] decode = base64.decode(encodeValue);
        try {
          System.out.println(new String(decode, "UTF-8"));
        } catch (UnsupportedEncodingException e) {
          e.printStackTrace();
        }

    3、第三种替代类:spring-core:org.springframework.util.Base64Utils类

        System.out.println("================spring-core:org.springframework.util.Base64Utils======================");
        String text4 = "字符串|Hello world";
        //编码
        String encodeValue4 = Base64Utils.encodeToString(text4.getBytes());
        System.out.println(encodeValue4);
        //解码
        byte[] bytes4 = Base64Utils.decodeFromString(encodeValue4);
        try {
          System.out.println(new String(bytes4, "UTF-8"));
        } catch (UnsupportedEncodingException e) {
          e.printStackTrace();
        }

    四、扩展

    编码/解码替代的类,可以互相解码彼此编码后的字符串。实际上,他们底层的编码与加码的算法都是一样的,所以使用不用担心别人给你的是哪一种编码类生成字符串。

     

    参考文献:
    1、http://blog.sina.com.cn/s/blog_5a6efa330102v8st.html
    2、https://www.cnblogs.com/alter888/p/9140732.html

    展开全文
  • public class Base64Encoder { private static final char last2byte = (char) Integer .parseInt("00000011", 2); private static final char last4byte = (char) Integer .parseInt("00001111", 2); pri....
    public class Base64Encoder {
    	private static final char last2byte = (char) Integer
    			.parseInt("00000011", 2);
    	private static final char last4byte = (char) Integer
    			.parseInt("00001111", 2);
    	private static final char last6byte = (char) Integer
    			.parseInt("00111111", 2);
    	private static final char lead6byte = (char) Integer
    			.parseInt("11111100", 2);
    	private static final char lead4byte = (char) Integer
    			.parseInt("11110000", 2);
    	private static final char lead2byte = (char) Integer
    			.parseInt("11000000", 2);
    	private static final char[] encodeTable = new char[] { 'A', 'B', 'C', 'D',
    			'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q',
    			'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd',
    			'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q',
    			'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3',
    			'4', '5', '6', '7', '8', '9', '+', '/' };
     
    	/**
    	 * Base64 encoding.
    	 * 
    	 * @param from
    	 *            The src data.
    	 * @return
    	 */
    	public static String encode(byte[] from) {
    		StringBuffer to = new StringBuffer((int) (from.length * 1.34) + 3);
    		int num = 0;
    		char currentByte = 0;
    		for (int i = 0; i < from.length; i++) {
    			num = num % 8;
    			while (num < 8) {
    				switch (num) {
    				case 0:
    					currentByte = (char) (from[i] & lead6byte);
    					currentByte = (char) (currentByte >>> 2);
    					break;
    				case 2:
    					currentByte = (char) (from[i] & last6byte);
    					break;
    				case 4:
    					currentByte = (char) (from[i] & last4byte);
    					currentByte = (char) (currentByte << 2);
    					if ((i + 1) < from.length) {
    						currentByte |= (from[i + 1] & lead2byte) >>> 6;
    					}
    					break;
    				case 6:
    					currentByte = (char) (from[i] & last2byte);
    					currentByte = (char) (currentByte << 4);
    					if ((i + 1) < from.length) {
    						currentByte |= (from[i + 1] & lead4byte) >>> 4;
    					}
    					break;
    				}
    				to.append(encodeTable[currentByte]);
    				num += 6;
    			}
    		}
    		if (to.length() % 4 != 0) {
    			for (int i = 4 - to.length() % 4; i > 0; i--) {
    				to.append("=");
    			}
    		}
    		return to.toString();
    	}
    }

    非常感谢:参天大树SJ

    展开全文
  • 然后在导包import sun.misc.BASE64Encoder时,发现IDEA报错了,无法识别这个类。最后发现在JDK9后,官方就已经不支持import sun.misc.BASE64Encoder了。 网上说了很多,第一种是把JDK的版本降低到1.8以内。但是我...
  • sun.misc.BASE64Encoder 找不到jar包
  • 在写一个安卓App的时候遇到了一个致命的问题 import java.util.BASE64Encoder ?我相信初学者遇到这个问题肯定需要耗费一些时间来能解决?废话不多说,答案如下: 1、建一个Java 类 ,名字如下decode: public ...
  • sun.misc.BASE64Encoder一行不能超过76字符,超过则添加回车换行符。 源码 public void encode(InputStream var1, OutputStream var2) throws IOException { byte[] var5 = new byte[this.bytesPerLine()]; this...
  • Java开发中BASE64Encoder的使用

    千次阅读 2019-06-05 17:33:42
    BASE64Encoder 其实是在jkd中的,但是默认不开放,在API中也是找不到的 所以先看看怎么将其导入: 右击项目--build path-->>configure build path-->> 双击Access rules-->>edit-->>...
  • BASE64Encoder是jdk8之前自带的方法, 如果jdk版本高于jdk8的时候,可以选择引入base64的包, 将原来 BASE64Encoder encoder = new BASE64Encoder(); String base64Str = encoder.encode(data); 换成base64的 import ...
  • import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.IOException;...import java.io.InputStream;...import sun.misc.BASE64Decoder;...import sun.misc.BASE64E

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 37,911
精华内容 15,164
关键字:

base64encoder