【发布时间】:2015-07-13 21:09:40
【问题描述】:
我想使用 Advanced Rest Client 从我的桌面发布一个文本文件。 这是我的控制器:
@RequestMapping(value = "/vsp/debug/compareConfig/{deviceIp:.*}", method = RequestMethod.POST, consumes = { "multipart/form-data" }, produces = { "application/json" })
public ResponseEntity<SuccessResult> compareCLIs(HttpServletRequest request, @RequestParam("file") MultipartFile file, @PathVariable("deviceIp") String device)
{
log.info(file.getOriginalFilename());
byte[] bytearr = file.getBytes();
log.info("byte length: ", bytearr.length);
log.info("Size : ", file.getSize());
}
这不会返回任何字节长度或文件大小的值。我想将文件值读取到 StringBuffer。有人可以提供有关此的指示吗?我不确定在将其解析为字符串之前是否需要保存此文件。如果是这样,我如何将文件保存在工作区中?
【问题讨论】:
-
您应该避免一次检索所有字节。相反,使用
MultiPartFile#getInputStream并使用该流来填充您的StringBuilder(您不需要使用StringBuffer)或任何其他方式来使用数据。 -
嗨..你得到解决方案了吗。请添加解决方案。
标签: java spring multipartform-data