如何获取sun.misc.BASE64Encoder类的JAR文件?

时间:2011-08-18 05:03:07

标签: android jar

我的Activity类中有一些使用sun.misc.BASE64Encoder类的代码。但它显示“java.lang.NoClassDefFoundError:sun.misc.BASE64Encoder”。我需要罐子吗?我在哪里可以下载?请帮帮我。

4 个答案:

答案 0 :(得分:3)

不要使用sun.*课程。对于Android中的Base64,使用它的native class或者为你的项目添加一个库(Apache commons等)。或者,只需将Android源代码复制到您的项目(在您自己的包中),如果您需要在2.2之前的设备上使用它。

答案 1 :(得分:0)

它可以在rt.jar中找到,它随Sun java运行时一起提供。

在1.5.0_06:jre \ lib \ rt.jar

答案 2 :(得分:0)

  1. 只需将rt.jar从path添加到项目的构建路径 C:\Program Files\AdoptOpenJDK\jdk-8.0.202.08\jre\lib
  2. 复制jar并将其粘贴到项目的库文件夹中。

答案 3 :(得分:0)

Java 8 开始,您可以使用 java.util.Base64 类:

byte[] original = "Base64".getBytes(StandardCharsets.UTF_8);

// encode
byte[] toBase64 = Base64.getEncoder().encode(original);

// decode
byte[] fromBase64 = Base64.getDecoder().decode(toBase64);

// output
System.out.println(new String(toBase64)); //QmFzZTY0
System.out.println(new String(fromBase64)); //Base64
System.out.println(Arrays.equals(original, fromBase64)); //true

另见:How can I convert a string into a GZIP Base64 string?