欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java操作文件路徑正反斜杠問題解決

 更新時間:2024年01月31日 09:35:04   作者:糊涂涂糊涂涂  
最近在實現(xiàn)文件上傳時,windows與linux系統(tǒng)出現(xiàn)的問題,兩個系統(tǒng)中操作文件使用"\","/"導致IOException,本文主要介紹了Java操作文件路徑正反斜杠問題解決,感興趣的可以了解一下啊

一. 起因  

問題來源:最近在實現(xiàn)文件上傳時,windows與linux系統(tǒng)出現(xiàn)的問題,兩個系統(tǒng)中操作文件使用"\","/"導致IOException

二. 測試正反斜桿

2.1 \

@Controller
@RequestMapping("/test")
public class Test {

    @RequestMapping("/file")
    @ResponseBody
    public Object readFile(HttpServletResponse response) throws IOException {
        BufferedImage banner = ImageIO.read(new File("F:\\Img\\ghost_K\\bj3.jpeg"));
        ImageIO.write(banner, "jpeg", response.getOutputStream());
        return "獲取成功";
    }
}

運行結(jié)果

2.2 /

@Controller
@RequestMapping("/test")
public class Test {

    @RequestMapping("/file2")
    @ResponseBody
    public Object readFile2(HttpServletResponse response) throws IOException {
        BufferedImage banner = ImageIO.read(new File("F:/Img/ghost_K/bj3.jpeg"));
        ImageIO.write(banner, "jpeg", response.getOutputStream());
        return "獲取成功";
    }
}

運行結(jié)果

2.3 混用

@Controller
@RequestMapping("/test")
public class Test {

     @RequestMapping("/file1")
    @ResponseBody
    public Object readFile1(HttpServletResponse response) throws IOException {
        BufferedImage banner = ImageIO.read(new File("F:\\Img/ghost_K\\bj3.jpeg"));
        ImageIO.write(banner, "jpeg", response.getOutputStream());
        return "獲取成功";
    }
}

運行結(jié)果

2.4 小結(jié) 

在java中操作文件時,無論正反斜桿都是可以的,在用到\\(雙反斜杠,前面一個反斜杠代表轉(zhuǎn)義符),而如果直接轉(zhuǎn)義反斜杠則會報錯

三. 使用建議

經(jīng)過查詢各種資料后,得出以下結(jié)論

  • java中的路徑一般用"/"
  • windows中的路徑一般用"\",而"\"需要轉(zhuǎn)義,因此需要寫成"\\"
  • linux、unix中的路徑一般用"/"

由于Windows的路徑中,使用"/"也可以讀取到文件,個人感覺,"/"的跨平臺性更好,使用起來更加方便

到此這篇關于Java操作文件路徑正反斜杠問題解決的文章就介紹到這了,更多相關Java 路徑正反斜杠內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Java中多線程下載圖片并壓縮能提高效率嗎

    Java中多線程下載圖片并壓縮能提高效率嗎

    本文主要介紹了Java中多線程下載圖片并壓縮能提高效率嗎,很多人都想知道這個問題,本文就來詳細介紹一下,感興趣的小伙伴們可以參考一下
    2021-07-07
  • Mybatis批量修改的操作代碼

    Mybatis批量修改的操作代碼

    這篇文章主要介紹了Mybatis批量修改的操作代碼,包括整體批量修改的詳細代碼,代碼簡單易懂,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2017-09-09
  • Mybatis-plus 批量插入太慢的問題解決(提升插入性能)

    Mybatis-plus 批量插入太慢的問題解決(提升插入性能)

    公司使用的Mybatis-Plus操作SQL,用過Mybatis-Plus的小伙伴一定知道他有很多API提供給我們使用,但是批量插入大數(shù)據(jù)太慢應該怎么解決,本文就詳細的介紹一下,感興趣的可以了解一下
    2021-11-11
  • JSON字符串轉(zhuǎn)成java的Map對象詳細步驟

    JSON字符串轉(zhuǎn)成java的Map對象詳細步驟

    這篇文章主要介紹了如何將JSON字符串轉(zhuǎn)換為Java對象的步驟,包括定義Element類、使用Jackson庫解析JSON和添加依賴,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-01-01
  • Java二叉樹的四種遍歷(遞歸與非遞歸)

    Java二叉樹的四種遍歷(遞歸與非遞歸)

    這篇文章小編給大家分享的是Java二叉樹的四種遍歷,主要是遞歸與非遞歸,下面文章加u來詳細介紹,感興趣的小伙伴一起來學習吧
    2021-10-10
  • 關于Springboot+gateway整合依賴并處理依賴沖突問題

    關于Springboot+gateway整合依賴并處理依賴沖突問題

    這篇文章主要介紹了Springboot+gateway整合依賴并處理依賴沖突問題,給大家提到了spring boot版本和spring cloud版本,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-01-01
  • SpringBoot中Redisson延遲隊列的示例

    SpringBoot中Redisson延遲隊列的示例

    延時隊列是一種常見的需求,延時隊列允許我們延遲處理某些任務,本文主要介紹了Redisson延遲隊列的示例,具有一定的參考價值,感興趣的可以了解一下
    2024-06-06
  • 編寫android撥打電話apk應用實例代碼

    編寫android撥打電話apk應用實例代碼

    這篇文章主要介紹了編寫android撥打電話apk應用實例代碼,十分的實用,這里分享給大家,有需要的小伙伴可以參考下
    2015-04-04
  • SpringBoot實現(xiàn)類似鉤子函數(shù)的方法

    SpringBoot實現(xiàn)類似鉤子函數(shù)的方法

    這篇文章主要給大家介紹了關于SpringBoot實現(xiàn)類似鉤子函數(shù)的方法,文中通過代碼示例介紹的非常詳細,對大家的學習或者工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2024-04-04
  • Java MapStruct解了對象映射的毒

    Java MapStruct解了對象映射的毒

    這篇文章主要介紹了MapStruct解了對象映射的毒,對MapStruct感興趣的同學,可以參考下
    2021-04-04

最新評論