####上传文件
js处理
var file=e.target.files[0];
var reader=new FileReader();
reader.readAsDataURL(file,"UTF-8");
var fileStringBase64="";
reader.onload=function(){
fileStringBase64=this.result;
fileStringBase64=fileStringBase64.substring(fileStringBase64.indexOf(",")+1,fileStringBase64.length);
$.ajax({
url:"/guns-web/main/compDemoFileUpload",
type:"post",
data:fileStringBase64,
success:function(data){
console.log(data);
}
})
};
java处理 inputStream to fileStr
String fileStr=convertStreamToString(request.getInputStream(),"UTF-8");
str2File(fileStr,"/name/1.txt");
public static String convertStreamToString(InputStream is, String charSet) throws Exception{
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
byte[] data = new byte[1024];
int count = -1;
while((count = is.read(data,0,1024)) != -1)
outStream.write(data, 0, count);
data = null;
return new String(outStream.toByteArray(),charSet);
}
public static boolean str2File(String fileStr,String filePath){
//
if (fileStr == null) //文件数据为空
return false;
try {
//Base64解码
byte[] b = Base64.decodeBase64(fileStr);
for(int i=0;i<b.length;++i){
if(b[i]<0){//调整异常数据
b[i]+=256;
}
}
//生成文件,并保存在服务器硬盘上
OutputStream out = new FileOutputStream(filePath);
out.write(b);
out.flush();
out.close();
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}