最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Springboot下載excel文件中文名亂碼問(wèn)題及解決

 更新時(shí)間:2024年05月31日 16:12:32   作者:時(shí)間的痕跡01  
這篇文章主要介紹了Springboot下載excel文件中文名亂碼問(wèn)題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Springboot下載excel文件中文名亂碼

通常在下載文件時(shí)會(huì)通過(guò)HttpServletResponse對(duì)象設(shè)置一些屬性以及文件名

核心代碼

如下:

response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(FILE_NAME, "UTF-8") + "");
response.setHeader("Content-Disposition", "attachment;filename=" + FILE_NAME+"");
response.setContentType("application/vnd.ms-excel;charset=utf-8");
response.setCharacterEncoding("utf-8");

紅色部分是最終正確的姿勢(shì),最開(kāi)始我是用紫色部分的代碼實(shí)現(xiàn)的,但是在用postman調(diào)用接口的時(shí)候發(fā)現(xiàn)下載下來(lái)的文件名如果有中文就會(huì)出現(xiàn)亂碼

查了一通資料,改用紅色部分實(shí)現(xiàn),但是用postman下載下來(lái)過(guò)后發(fā)現(xiàn)文件名稱是經(jīng)過(guò)編碼的。

類似這樣:

%E9%A2%84%E7%AE%97%E5%AF%BC%E5%85%A5.xlsx

于是我試了很多次還是這樣,最后偶然發(fā)現(xiàn)在瀏覽器里面調(diào)用接口下載下來(lái)的文件名是正常的,不知道postman為啥始終不行

Springboot文件下載的時(shí)候文件名出現(xiàn)問(wèn)題

1.一開(kāi)始文件名全是下橫線__

經(jīng)查詢之后,添加了這行代碼

response.setHeader("Content-Disposition",
        "attachment;filename=" + URLEncoder.encode(homeworkname, "utf-8"))

2.下橫線的問(wèn)題解決了

但出現(xiàn)中文亂碼,出現(xiàn)%%字符

再次查找之類,將上述的代碼改成以下,解決亂碼

response.setHeader("Content-Disposition", "attachment;filename="+  homeworkname +";filename*=utf-8''"+URLEncoder.encode(homeworkname,"UTF-8"));

除此之外,發(fā)現(xiàn)也可以用這種方法

response.setHeader("Content-Disposition",
        "attachment;filename=" + new String(homeworkname.getBytes("utf-8"), "ISO8859-1"));

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 如何利用泛型封裝通用的service層

    如何利用泛型封裝通用的service層

    這篇文章主要介紹了如何利用泛型封裝通用的service層,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Java中使用JWT生成Token進(jìn)行接口鑒權(quán)實(shí)現(xiàn)方法

    Java中使用JWT生成Token進(jìn)行接口鑒權(quán)實(shí)現(xiàn)方法

    這篇文章主要介紹了Java中使用JWT生成Token進(jìn)行接口鑒權(quán)實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • 解讀Spring事務(wù)是如何實(shí)現(xiàn)的

    解讀Spring事務(wù)是如何實(shí)現(xiàn)的

    這篇文章主要介紹了Spring事務(wù)是如何實(shí)現(xiàn)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • Java中的遠(yuǎn)程方法調(diào)用之RPC使用

    Java中的遠(yuǎn)程方法調(diào)用之RPC使用

    本文介紹了RPC的基本概念、核心思想及其在分布式系統(tǒng)中的作用,重點(diǎn)講解了Java中的三種RPC實(shí)現(xiàn)方式:RMI、Hessian和Dubbo,分別從適用場(chǎng)景、核心特點(diǎn)等方面做了對(duì)比對(duì)比較,并并提供了其基本實(shí)現(xiàn)代碼示例,總結(jié)了各框架的優(yōu)缺點(diǎn),為實(shí)際開(kāi)發(fā)中選擇合適的技術(shù)棧提供了參考
    2026-05-05
  • Java開(kāi)發(fā)中常用的 Websocket 技術(shù)參考

    Java開(kāi)發(fā)中常用的 Websocket 技術(shù)參考

    WebSocket 使得客戶端和服務(wù)器之間的數(shù)據(jù)交換變得更加簡(jiǎn)單,允許服務(wù)端主動(dòng)向客戶端推送數(shù)據(jù),當(dāng)然也支持客戶端發(fā)送數(shù)據(jù)到服務(wù)端。
    2020-09-09
  • spring @Transactional 無(wú)效的解決方案

    spring @Transactional 無(wú)效的解決方案

    這篇文章主要介紹了spring @Transactional 無(wú)效的解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • 關(guān)于Intellij IDEA中的Version Control問(wèn)題

    關(guān)于Intellij IDEA中的Version Control問(wèn)題

    這篇文章主要介紹了Intellij IDEA中的Version Control問(wèn)題,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-11-11
  • Spring Security 構(gòu)建rest服務(wù)實(shí)現(xiàn)rememberme 記住我功能

    Spring Security 構(gòu)建rest服務(wù)實(shí)現(xiàn)rememberme 記住我功能

    這篇文章主要介紹了Spring Security 構(gòu)建rest服務(wù)實(shí)現(xiàn)rememberme 記住我功能,需要的朋友可以參考下
    2018-03-03
  • java數(shù)學(xué)類Math?BigInteger?BigDecimal使用介紹

    java數(shù)學(xué)類Math?BigInteger?BigDecimal使用介紹

    這篇文章主要為大家介紹了java數(shù)學(xué)類Math、BigInteger、BigDecimal的使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06
  • 詳解Java 信號(hào)量Semaphore

    詳解Java 信號(hào)量Semaphore

    這篇文章主要介紹了Java 信號(hào)量Semaphore的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)Java并發(fā),感興趣的朋友可以了解下
    2020-09-09

最新評(píng)論

丁青县| 定远县| 玉环县| 林西县| 法库县| 庆安县| 侯马市| 曲沃县| 沙田区| 台江县| 合山市| 肥城市| 穆棱市| 黄骅市| 秦安县| 盐源县| 安远县| 襄汾县| 延安市| 定陶县| 通州市| 乌审旗| 象山县| 金塔县| 广水市| 南宫市| 萨迦县| 栖霞市| 盖州市| 崇左市| 怀柔区| 建宁县| 广河县| 五大连池市| 泾川县| 台安县| 九江市| 海宁市| 通许县| 阿勒泰市| 历史|