软件编程
位置:首页>> 软件编程>> java编程>> Java实现文件和base64流的相互转换功能示例

Java实现文件和base64流的相互转换功能示例

作者:痕_影  发布时间:2023-11-18 07:45:01 

标签:Java,文件,base64

本文实例讲述了Java实现文件和base64流的相互转换功能。分享给大家供大家参考,具体如下:


import java.io.FileInputStream;
import java.io.FileOutputStream;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
/**
* 文件与base64的互相转换操作
*/
public class testFile {
public static void main(String[] args) {
testFile t = new testFile();
try {
String ret = t.encodeBase64File("d://IE和火狐js或css差异.docx");
System.err.println(ret);
t.decoderBase64File(ret, "d://ghsTest/retFile.docx", "d://ghsTest/");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
  * 将文件转成base64 字符串
  *
  * @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);
 }
 /**
  * 将base64字符解码保存文件
  *
  * @param base64Code
  * @param targetPath
  * @throws Exception
  */
 public static void decoderBase64File(String base64Code, String targetPath,String catalogue)
     throws Exception {
 File file = new File(catalogue);
 if(file.exists()==false){
 file.mkdirs();
 }
   byte[] buffer = new BASE64Decoder().decodeBuffer(base64Code);
   FileOutputStream out = new FileOutputStream(targetPath);
   out.write(buffer);
   out.close();
 }
}

希望本文所述对大家java程序设计有所帮助。

来源:https://blog.csdn.net/thghs/article/details/43233199

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com