可以考虑使用:
javax.mail.internet.MimeUtility或者apache的
org.apache.commons.codec.binary.Base64
使用commons-codec.jar
/**
* @param bytes
* @return
*/
public static byte[] decode(final byte[] bytes) {
return Base64.decodeBase64(bytes);
}
/**
* 二进制数据编码为BASE64字符串
*
* @param bytes
* @return
* @throws Exception
*/
public static String encode(final byte[] bytes) {
return new String(Base64.encodeBase64(bytes));
}
下面会提示:
BASE64Encoder是内部专用 API, 可能会在未来发行版中删除
http://www.iteye.com/topic/605714
字符串编码解码
import java.io.IOException;
public class Test {
/**
* 编码
* @param bstr
* @return String
*/
public static String encode(byte[] bstr){
return new sun.misc.BASE64Encoder().encode(bstr);
}
/**
* 解码
* @param str
* @return string
*/
public static byte[] decode(String str){
byte[] bt = null;
try {
sun.misc.BASE64Decoder decoder = new sun.misc.BASE64Decoder();
bt = decoder.decodeBuffer( str );
} catch (IOException e) {
e.printStackTrace();
}
return bt;
}
/**
* @param args
*/
public static void main(String[] args) {
test te = new test();
String aa = "更多更多";
aa = te.encode(aa.getBytes());
System.out.println("----aa:"+aa);
String str = aa;
String str2 = new String(te.decode(str));
System.out.println("-----str2:"+str2);
}
}
图片编码解码
package palmcity.cpndservice.tool;
import java.io.FileInputStream;
import java.io.RandomAccessFile;
public class ImageTool {
/**
* 图片BASE64 编码
*/
public static String getPicBASE64(String picPath) {
String content = null;
try {
FileInputStream fis = new FileInputStream(picPath);
byte[] bytes = new byte[fis.available()];
fis.read(bytes);
content = new sun.misc.BASE64Encoder().encode(bytes); // 具体的编码方法
fis.close();
// System.out.println(content.length());
} catch (Exception e) {
e.printStackTrace();
}
return content;
}
/**
* 对图片BASE64 解码
*
*/
public static void getPicFormatBASE64(String str, String picPath) {
try {
byte[] result = new sun.misc.BASE64Decoder().decodeBuffer(str
.trim());
RandomAccessFile inOut = new RandomAccessFile(picPath, "rw"); // r,rw,rws,rwd
// 用FileOutputStream亦可
inOut.write(result);
inOut.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
下面我们将详细分析Java Base64解码错误的原因和解决方法。 一、 Java Base64解码错误的原因 Java Base64解码错误的原因可以归结为以下几点: 1. 输入参数不正确:Base64解码的输入参数可能为空或格式不正确,...
常见的编程语言如Python、Java、JavaScript、C#等都有内置的Base64编码和解码函数,可以方便地对数据进行Base64操作。例如在Python中,可以使用`base64`模块的`b64decode()`方法进行解码: ```python import base64...
Linux系统内置了一个名为`base64`的命令行工具,用于进行Base64编码和解码操作。该工具非常实用,可以处理文件或直接读取标准输入。例如,你可以通过以下命令对一个文件进行Base64编码: ```bash base64 input_file...
总结来说,`Cropper图片裁剪案例java-base64上传`涉及了前端与后端的协同工作,包括前端的图片裁剪、Base64编码,以及后端的Base64解码、图片裁剪和保存。开发者需要根据实际需求和项目规模来选择合适的方法,同时...
将图片转换为Base64字符串的过程通常涉及读取图片文件的字节流,然后使用Base64编码器(在这个案例中是`BASE64Decoder`的对应编码器`sun.misc.BASE64Encoder`,虽然现在更推荐使用Java 8引入的`java.util.Base64`类...
- 有许多开源库提供了Base64编码和解码功能,例如在Java中有`java.util.Base64`,Python中有`base64`模块,JavaScript中也有全局的`btoa`和`atob`函数。 - 在线工具也能完成Base64转换,比如`...
这两个类是Java的标准库中的工具类,用于进行Base64编码和解码。但在某些情况下,Eclipse可能无法直接使用这些类,这可能是由于项目配置、JDK版本不兼容或其他原因导致的。以下将详细介绍如何在Eclipse中解除对这些...
在Java中,可以使用`java.util.Base64`类来进行Base64编码和解码,而加密和解密则可以通过`javax.crypto`包提供的接口来实现。例如,AES加密可能涉及`Cipher`类,用于实现加密和解密操作,`SecretKeySpec`用于创建...
这里的“你的公钥”应当从后端获取,通常是Base64编码的PEM格式。 后端(这里是Java)使用`RSAUtils.java`来处理解密过程。Java提供了内置的`java.security`包,可以方便地处理RSA加密和解密。`RSAUtils`类可能包含...
综合上述内容,`pbfunc9`是一个集成了多种功能的库,主要面向Protocol Buffers的使用者,提供了HTTP交互、二维码生成、Base64编码解码等实用工具。这个库的源码可以作为一个学习资源,帮助开发者更好地理解和处理PB...
在Java 8及以上版本,`java.util.Base64`类提供了解码和编码的API。Base64编码将二进制数据转换为ASCII字符串,适合在不支持二进制传输的环境中使用,如电子邮件。解码则是相反的过程,将Base64字符串还原为原始二...
这个类可能包含了Base64编码和解码的方法,如`encode()`和`decode()`。 总的来说,这个压缩包提供的代码实例展示了如何在Java中利用RSA公钥/私钥加密技术来保护敏感信息的安全。这在实际应用中,比如HTTPS通信、...
在Java中,可以使用`java.util.Base64`类来进行Base64的编码和解码。 在解码Base64字符串后,后端需要使用相同的密钥和算法对数据进行解密,以恢复原始信息。这通常涉及到与前端使用的相同加密库或者实现,例如在...
`Base64.java`是一个处理base64编码和解码的类。在JavaWeb应用中,当需要在网络上传输图片或者其它二进制数据时,base64编码是一个常用手段,因为它可以把二进制数据转化为ASCII字符串,方便在网络中传输。在这个...
4. **Base64编码**:理解Base64编码的原理和Java中的`java.util.Base64`类的使用,包括编码和解码方法。 5. **16位字符串格式**:了解如何将二进制数据转化为16位字符串,并在Java中实现转换。 6. **源码分析**:...
`BufferedImageLuminanceSource`是ZXing为了读取图像数据并将其转换为适合编码或解码的格式而设计的。 6. **LOGO集成**: 在二维码中间添加LOGO可以提高品牌识别度。实现这个功能通常涉及将LOGO图像转换为适合嵌入的...
JavaWord图片处理主要涉及到的...需要注意的是,为了正确地将Base64编码的数据解码为原始的二进制图片,还需要使用Base64解码库,如Java 8及以上版本提供的`java.util.Base64`类,或者第三方库如Apache Commons Codec。
2. 在进行Base64编码和解码时,确保使用相同的字符集,例如这里使用的是UTF-8。 3. 加密和解密过程中处理异常,避免因为加密或解密失败而导致程序崩溃。 此外,由于`AESUtil`类中的密钥和偏移量是硬编码的,这在...
本项目“HeadUpload”专注于实现这一功能,通过三种途径:摄像头、图库选择以及图片裁剪,并且涉及了将图片数据转换为Base64编码以便在网络传输中使用。以下是对这些知识点的详细解释: 1. **摄像头**: 使用...
实验过程中,你可以使用编程语言如Python或Java来实现Base64的算法,并测试不同数据的编码和解码结果,确保正确性。 实验二:设计与分析随机数算法 随机数在信息安全中扮演着重要角色,例如在密码学中生成密钥、...