我得到一个多部分文件作为控制器的参数。 我的控制器是:
@PostMapping({"/files"})
@ApiOperation("Create a file")
public FileDto postFile(
@ApiParam(value = "Description of the file") @RequestParam("data") String data,
@ApiParam(value = "The file") @RequestParam("file") MultipartFile file) throws IOException {
FileDto fileDto = objectMapper.readValue(data, FileDto.class);
fileValidator.validate(fileDto, file);
return fileService.postFile(fileDto, file, fileDto.getNotificationInfo());
}
我的问题是关于破折号(-)。如果文件名包含破折号,则将其视为问号(?)
例如,如果文件名是“ test—test.pdf”,并且如果我将调试点放在控制器上,则文件参数附带名称“ test?test.pdf”。
我该如何处理?我想要做的实际上是使用正则表达式编辑文件名,并将所有不同类型的破折号和连字符替换为普通的连字符,但是它已经作为问号出现了