解决文件下载时文件名中的中文变成下划线的问题

    技术2022-07-10  191

    解决文件下载时文件名中的中文变成下划线的问题

    最近写完了文件下载接口之后,发现文件的名称是英文还能够保持原样,但是一旦文件名中有中文就会这样 文件名中的中文全部变成了下划线,这一看就是字符转化的时候出了问题 选择在文件名生成的时候进行转码

    FileResource fr = filePathRepository.findById(fileId).get(); byte[] fileNameBytes = fr.getFilename().getBytes(StandardCharsets.UTF_8); String fileName = new String(fileNameBytes, 0, fileNameBytes.length, StandardCharsets.ISO_8859_1);

    这里在获取文件名之后对其进行转码再进行操作,就可以避免中文字符全部变成下划线的问题了。

    Processed: 0.037, SQL: 9