在java用字节流读取视频或者图片或者音频文件的时候,务必要记住,用字节流读出来的东西,必定要以字节的形式保存,传递,不能转换成字符串的形式。若是肯定要以字符串的形式进行保存传递,那么须要用BASE64进行加密,解密。
public static void main(String[] args) throws Exception{
FileInputStream fileForInput = new FileInputStream("F:\\ppt\\ppt.jpg");
String content = new String();
byte[] bytes = new byte[fileForInput.available()];
fileForInput.read(bytes);
content = new sun.misc.BASE64Encoder().encode(bytes); //具体的编码方法
fileForInput.close();
System.out.println(content);
byte[] result =new sun.misc.BASE64Decoder().decodeBuffer(content.trim());
RandomAccessFile inOut = new RandomAccessFile("d:\\my.jpg","rw");
inOut.write(result);
inOut.close();
}
在用get方法传送二进制文件字符的时候,须要用
System.out.println(URLEncoder.encode(GetImageStr("c:/dest.jpg"), "utf-8")); 处理一下,以防浏览器对url参数中的特殊字符进行一些处理。