JAVA文件轉(zhuǎn)換為Base64
作者:張勇波
博主發(fā)表的文章,有的是自己原創(chuàng),有的是這些年本人從網(wǎng)上積累的,方便大家學(xué)習(xí)。
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.FileOutputStream;
- import sun.misc.BASE64Decoder;
- import sun.misc.BASE64Encoder;
- public class FileToBase64 {
- /**
- * <p>將文件轉(zhuǎn)成base64 字符串</p>
- * @param path 文件路徑
- * @return
- * @throws Exception
- */
- public static String encodeBase64File(String path) throws Exception {
- File file = new File(path);
- FileInputStream inputFile = new FileInputStream(file);
- byte[] buffer = new byte[(int)file.length()];
- inputFile.read(buffer);
- inputFile.close();
- return new BASE64Encoder().encode(buffer);
- }
- /**
- * <p>將base64字符解碼保存文件</p>
- * @param base64Code
- * @param targetPath
- * @throws Exception
- */
- public static void decoderBase64File(String base64Code,String targetPath) throws Exception {
- byte[] buffer = new BASE64Decoder().decodeBuffer(base64Code);
- FileOutputStream out = new FileOutputStream(targetPath);
- out.write(buffer);
- out.close();
- }
- /**
- * <p>將base64字符保存文本文件</p>
- * @param base64Code
- * @param targetPath
- * @throws Exception
- */
- public static void toFile(String base64Code,String targetPath) throws Exception {
- byte[] buffer = base64Code.getBytes();
- FileOutputStream out = new FileOutputStream(targetPath);
- out.write(buffer);
- out.close();
- }
- public static void main(String[] args) {
- try {
- String base64Code =encodeBase64File("/Users/Crazy/Pictures/zyb2.jpg");
- System.out.println(base64Code);
- decoderBase64File(base64Code, "/Users/Crazy/Desktop/zyb.png");
- toFile(base64Code, "/Users/Crazy/Desktop/zyb.txt");
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
【本文是51CTO專欄作者張勇波的原創(chuàng)文章,轉(zhuǎn)載請(qǐng)通過51CTO獲取作者授權(quán)】
責(zé)任編輯:武曉燕
來源:
上下求索的Z先生博客