我是文件处理的新手。我想阅读上传的文本或CSV文件。 控制器看起来像这样:
@PostMapping("/{testid}/consumers")
@Consumes(MediaType.MULTIPART_FORM_DATA)
@ResponseStatus(HttpStatus.OK)
public Subscription createConsumer(@PathVariable String cid, @FormParam("file") InputStream inputStream)
我正在这样阅读:
public Subscription createSubscription(String campaingid, InputStream file) {
BufferedReader br = new BufferedReader(new InputStreamReader(file));
log.debug("Write File--------------------------- ");
String line = null;
try {
while ((line=br.readLine()) != null) {
log.debug("Line: " + line);
} catch (IOException ioe) {
log.error("Exception while reading input " + ioe);
}
}
但是我在'br'对象中得到了空值。我在这里做什么错?我没有使用球衣框架。我正在使用弹簧靴架。
答案 0 :(得分:0)
我对此有解决方案! 我将其修改如下:
@PostMapping("/{testid}/consumers")
@Consumes(MediaType.MULTIPART_FORM_DATA)
@ResponseStatus(HttpStatus.OK)
public Subscription createConsumer(@PathVariable String cid, @RequestParam("file") MultipartFile file)
我正在阅读以下内容:
InputStream inputStream = file.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(inputStream));
list = br.lines().collect(Collectors.toList());