亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

java 讀取文件路徑空格、"+"和中文的處理方法

 更新時(shí)間:2018年07月24日 09:31:32   作者:樂觀男孩  
今天小編就為大家分享一篇java 讀取文件路徑空格、"+"和中文的處理方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧

有時(shí)候在java代碼中讀取文件,如果文件所在路徑包含空格、”+“號(hào)或者是中文的時(shí)候,由于這些特殊的字符會(huì)被進(jìn)行編碼轉(zhuǎn)譯,所以就會(huì)報(bào)沒有發(fā)現(xiàn)文件的錯(cuò)誤,那么遇到這種錯(cuò)誤,我們就要把編碼過后的路徑進(jìn)行解碼,這樣才能正確的找到文件。主要的解決方法有一下三種方法:

解決方法

1、替換法

比如文件路徑如果存在空格,那么會(huì)被轉(zhuǎn)譯成“%20”,那么就可以利用字符串替換,把“%20”傳化成空格,這樣就能正確的找到文件了。這是這種如此暴力,低級(jí)的處理方法,一般有經(jīng)驗(yàn)的開發(fā)人員都不會(huì)采用吧?

2、使用URLDecoder.decode(str,enc)進(jìn)行解碼

如果空格、中文被轉(zhuǎn)譯過后,可以使用URLDecoder.decode方法進(jìn)行解碼,但是這種方法對于路徑中包含“+”號(hào)并不能進(jìn)行正確解碼,因?yàn)閁RLDecoder.decode方法內(nèi)部如果發(fā)現(xiàn)是加號(hào),將會(huì)將其轉(zhuǎn)成空格:

3、萬能方法,使用toURI().getPath()

toURI()會(huì)跟自己的規(guī)則對字符串進(jìn)行編碼,然后又能自動(dòng)解碼,所以不用自己去關(guān)心這些事情,可以自行看下它的源碼。

演示:

web項(xiàng)目部署在一個(gè)tomcat中,路徑為:”D:\Program Files\java\apache-tomcat-6.0.26”

1、字符串包含空格:

從截圖中可以看到,路徑存在的空格已經(jīng)被轉(zhuǎn)成“%20”,如果不對這包含空格的路徑進(jìn)行解碼,那么直接讀取文件是獲取不到的;如果使用了以上第二、第三種方法,則能正確獲取到文件。

2、路徑中包含“+”

從上圖可以看到,如果路徑中包含“+”號(hào),那么第二種方法就失效了,但是第三種方法還是有效。所以平時(shí)使用最好是使用第三種方法比較好。此外,以上介紹的方法,如果部署在linux下也是適用的。

以上這篇java 讀取文件路徑空格、"+"和中文的處理方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringMVC的組件之HandlerExceptionResolver詳解

    SpringMVC的組件之HandlerExceptionResolver詳解

    這篇文章主要介紹了SpringMVC的組件之HandlerExceptionResolver詳解,不管是在處理請求映射(HandlerMapping),還是在請求被處理(Handler)時(shí)拋出的異常,DispatcherServlet都會(huì)委托給HandlerExceptionResolver進(jìn)行異常處理,該接口只有一個(gè)方法,需要的朋友可以參考下
    2023-10-10
  • 初探Spring Cloud Gateway實(shí)戰(zhàn)

    初探Spring Cloud Gateway實(shí)戰(zhàn)

    這篇文章主要介紹了創(chuàng)建網(wǎng)關(guān)項(xiàng)目(Spring Cloud Gateway)過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2021-08-08
  • ZooKeeper入門教程三分布式鎖實(shí)現(xiàn)及完整運(yùn)行源碼

    ZooKeeper入門教程三分布式鎖實(shí)現(xiàn)及完整運(yùn)行源碼

    本文是ZooKeeper入門系列教程,分布式鎖有多種實(shí)現(xiàn)方式,比如通過數(shù)據(jù)庫、redis都可實(shí)現(xiàn)。作為分布式協(xié)同工具ZooKeeper,當(dāng)然也有著標(biāo)準(zhǔn)的實(shí)現(xiàn)方式。本文介紹在zookeeper中如何實(shí)現(xiàn)排他鎖
    2022-01-01
  • 搜索一文入門ElasticSearch(節(jié)點(diǎn) 分片 CRUD 倒排索引 分詞)

    搜索一文入門ElasticSearch(節(jié)點(diǎn) 分片 CRUD 倒排索引 分詞)

    這篇文章主要為大家介紹了搜索一文入門ElasticSearch(節(jié)點(diǎn) 分片 CRUD 倒排索引 分詞)的基礎(chǔ)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • spring data jpa使用詳解(推薦)

    spring data jpa使用詳解(推薦)

    這篇文章主要介紹了spring data jpa使用詳解(推薦),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-04-04
  • Java中將base64編碼字符串轉(zhuǎn)換為圖片的代碼

    Java中將base64編碼字符串轉(zhuǎn)換為圖片的代碼

    這篇文章主要介紹了Java中將base64編碼字符串轉(zhuǎn)換為圖片,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-03-03
  • Java 在PPT中添加混合圖表過程詳解

    Java 在PPT中添加混合圖表過程詳解

    這篇文章主要介紹了Java 在PPT中添加混合圖表過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • java使用觀察者模式異步短信/郵箱提醒用戶群

    java使用觀察者模式異步短信/郵箱提醒用戶群

    這篇文章主要為大家詳細(xì)介紹了java使用觀察者模式異步短信和郵箱提醒用戶群,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • Java Idea高效率配置技巧實(shí)例解析

    Java Idea高效率配置技巧實(shí)例解析

    這篇文章主要介紹了Java Idea高效率配置技巧實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • 使用maven方式創(chuàng)建springboot項(xiàng)目的方式

    使用maven方式創(chuàng)建springboot項(xiàng)目的方式

    使用Spring Initializr創(chuàng)建spring boot項(xiàng)目,因?yàn)橥饩W(wǎng)問題導(dǎo)致很難成功,所以只能使用maven方式,這里介紹下使用maven方式創(chuàng)建springboot項(xiàng)目的方法,感興趣的朋友一起看看吧
    2022-09-09

最新評(píng)論