java实现文件上传--flash上传

时间:2022-02-02 14:54:06

1、http请求的头信息是“application/octet-stream”,request body 是二进制的flash图片流

2、把流中的信息读入到文件中

代码如下,代码分三个部分:

-----------------主程序-----------------

import richinfo.tools.Base64Coder;
import richinfo.tools.file.FileUtil; public class WriteFlie
{ /**
* @param args
*/
public static void main(String[] args)
{
String s = "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSgBBwcHCggKEwoKEygaFhooKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKP/AABEIAZACJgMBEQACEQEDEQH/xAGiAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+gEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoLEQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APqmgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoACQASSABySamc404uc3ZLVt7JAlci+0Q/89o/++hXn/2zl3/QRD/wOP8AmX7OfZh9oh/57R/99Cj+2cu/6CIf+Bx/zD2c+zD7RD/z2j/76FH9s5d/0EQ/8Dj/AJh7OfZh9oh/57R/99Cj+2cu/wCgiH/gcf8AMPZz7MPtEP8Az2j/AO+hR/bOXf8AQRD/AMDj/mHs59mH2iH/AJ7R/wDfQo/tnLv+giH/AIHH/MPZz7MPtEP/AD2j/wC+hR/bOXf9BEP/AAOP+Yezn2YfaIf+e0f/AH0KP7Zy7/oIh/4HH/MPZz7MPtEP/PaP/voUf2zl3/QRD/wOP+Yezn2YfaIf+e0f/fQo/tnLv+giH/gcf8w9nPsw+0Q/89o/++hR/bOXf9BEP/A4/wCYezn2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ADD2c+zGSyxuqqkiM29eAQT94Vx47McJioRpUKsZSc6eikm9Jxb0T6JNvslcqMJRd2u/5FiveMgoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAP//Z";
byte[] b = Base64Coder.decode(s);
System.out.println(b.length);
String dirPath = "D://a.jpg";
FileUtil.saveFile(dirPath,b);
}
}

-----------------解码方法(base64转为字节)-----------------

public static byte[] decode(char[] in)
{
int iLen = in.length;
if (iLen % 4 != 0)
throw new IllegalArgumentException(
"Length of Base64 encoded input string is not a multiple of 4.");
while (iLen > 0 && in[iLen - 1] == '=')
iLen--;
int oLen = (iLen * 3) / 4;
byte[] out = new byte[oLen];
int ip = 0;
int op = 0;
while (ip < iLen)
{
int i0 = in[ip++];
int i1 = in[ip++];
int i2 = ip < iLen ? in[ip++] : 'A';
int i3 = ip < iLen ? in[ip++] : 'A';
if (i0 > 127 || i1 > 127 || i2 > 127 || i3 > 127)
throw new IllegalArgumentException(
"Illegal character in Base64 encoded data.");
int b0 = map2[i0];
int b1 = map2[i1];
int b2 = map2[i2];
int b3 = map2[i3];
if (b0 < 0 || b1 < 0 || b2 < 0 || b3 < 0)
throw new IllegalArgumentException(
"Illegal character in Base64 encoded data.");
int o0 = (b0 << 2) | (b1 >>> 4);
int o1 = ((b1 & 0xf) << 4) | (b2 >>> 2);
int o2 = ((b2 & 3) << 6) | b3;
out[op++] = (byte) o0;
if (op < oLen)
out[op++] = (byte) o1;
if (op < oLen)
out[op++] = (byte) o2;
}
return out;
}

-----------------上传-----------------

 public static int saveFile(String filePath, byte[] bytes)
{
FileOutputStream fos = null;
try
{
createFile(filePath);
fos = new FileOutputStream(filePath);
fos.write(bytes, 0, bytes.length);
fos.flush();
}
catch (FileNotFoundException e)
{
LOG.error("saveFileNOTFOUND,file={}", filePath, e);
}
catch (IOException e)
{
LOG.error("saveFileIO:file={}", filePath, e);
}
finally
{
StreamUtil.close(fos);
}
File file = new File(filePath);
if (file.exists())
{
return 0;
}
return -1;
}