java 将request中的文件以流的形式存入服务器本地
public String uploadFile(HttpServletRequest request) {
JSONObject resultObj = new JSONObject();
String message = null;
try {
// 服务器文件存储地址(从配置文件读)
String log_filePath = PropertiesUtil.getValue("log_filePath", "filePath.properties");
File log_file = new File(log_filePath);
// 校验文件是否存在
if (!log_file.exists()) {
log_file.setWritable(true, false);// 写权限
log_file.mkdirs();
}
//
String imei = request.getHeader("imei");
log_filePath = log_filePath + "/" + imei;
log_file = new File(log_filePath);
if (!log_file.exists()) {
log_file.setWritable(true, false);// 写权限
log_file.mkdir();
}
//
String date = DateUtils.getDate();
log_filePath = log_filePath + "/" + date;
log_file = new File(log_filePath);
if (!log_file.exists()) {
log_file.setWritable(true, false);// 写权限
log_file.mkdir();
}
// 新建文件名
String fileFileName = UUID.randomUUID().toString() + ".txt";
InputStream inStream = null;
FileOutputStream fo = null;
try {
inStream = request.getInputStream();
fo = new FileOutputStream(log_filePath + "/" + fileFileName);
byte[] a = new byte[1024];
int i = 0;
while ((i = inStream.read(a)) != -1) {
// 从指定的字节数组开始到当前输出流关闭写入len字节
fo.write(a, 0, i);
fo.flush();
}
} catch (Exception ex) {
log.error("文件写入操作异常");
resultObj.put("code", 500);
resultObj.put("message", "文件写入操作异常");
message = resultObj.toString();
return AJAX;
} finally {
if (inStream != null) {
try {
inStream.close();
} catch (IOException e) {
log.error("文件写入操作异常");
resultObj.put("code", 500);
resultObj.put("message", "文件写入操作异常");
message = resultObj.toString();
return AJAX;
}
}
if (fo != null) {
try {
fo.close();
} catch (IOException e) {
log.error("文件写入操作异常");
resultObj.put("code", 500);
resultObj.put("message", "文件写入操作异常");
message = resultObj.toString();
return AJAX;
}
}
}
} catch (Exception e) {
log.error("上传文件异常", e);
resultObj.put("code", 500);
resultObj.put("message", "上传文件");
message = resultObj.toString();
}
return AJAX;
}
版权声明:本文为z12345614a原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。