日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

关于File.separator 文件路径:window与linux下路径问题(“No such file or diretory ”异常解决方案)...

發布時間:2025/3/17 linux 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于File.separator 文件路径:window与linux下路径问题(“No such file or diretory ”异常解决方案)... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

  最近有個在頁面上傳Excel文件至服務器指定目錄并進行數據校驗、最后入庫及進行進一步處理的應用情境,我寫好代碼在模擬環境下測試,完全沒問題;但客戶試用的時候,卻老是報告“No such file or diretory ”的異常,上傳不了。后來發現是文件路徑的問題。我的模擬測試環境是windows+tomcat,而客戶的環境是linux+tomcat,文件路徑的分隔符在windows系統和linux系統中是不一樣。當直接使用絕對路徑時,跨平臺會暴出“No such file or diretory”的異常。

  File.separator是系統默認的文件分割符號,屏蔽了這些系統的區別。 用File.separator保證了在任何系統下不會出錯。

  比如說要在temp目錄下建立一個test.txt文件,在Windows下應該這么寫:
    File file1 = new File ("C:\tmp\test.txt");
  在Linux下則是這樣的:
    File file2 = new File ("/tmp/test.txt");
  如果要考慮跨平臺,則最好是這么寫:
    File myFile = new File("C:" + File.separator + "tmp" + File.separator, "test.txt");

File類有幾個類似separator的靜態字段,都是與系統相關的,在編程時應盡量使用。
separatorChar
  public static final char separatorChar
  與系統有關的默認名稱分隔符。此字段被初始化為包含系統屬性 file.separator 值的第一個字符。在 UNIX 系統上,此字段的值為 '/';在 Microsoft Windows 系統上,它為 '\'。
separator
  public static final String separator
  與系統有關的默認名稱分隔符,為了方便,它被表示為一個字符串。此字符串只包含一個字符,即 separatorChar。
pathSeparatorChar
  public static final char pathSeparatorChar
  與系統有關的路徑分隔符。此字段被初始為包含系統屬性 path.separator 值的第一個字符。此字符用于分隔以路徑列表 形式給定的文件序列中的文件名。在 UNIX 系統上,此字段為 ':';在 Microsoft Windows 系統上,它為 ';'。
pathSeparator
  public static final String pathSeparator
  與系統有關的路徑分隔符,為了方便,它被表示為一個字符串。此字符串只包含一個字符,即 pathSeparatorChar。

?

總結

以上是生活随笔為你收集整理的关于File.separator 文件路径:window与linux下路径问题(“No such file or diretory ”异常解决方案)...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。