2011-07-13 27 views
8

我知道你可以打電話有沒有好的方法來確定是否一個文件是Java可執行

Runtime.getRuntime().exec(file); 

,並得到一個異常,如果它是不可執行的,但是這是因爲可以運行一個可執行文件不安全有副作用。

我想只是在Windows上檢查擴展是足夠的,但有沒有辦法可以讀取* nix文件系統上的可執行位?

找出文件在OS中是否可執行的最佳方法是什麼?

回答

15
+2

爲此,我預計它將被稱爲isExecutable乾杯,所以我開始在自動完成中輸入「is」。 –

+3

只要注意,這將返回目錄真;所以在.canExecute之前調用.isDirectory。 – vemv

+7

這可能不是,你在找什麼,因爲ist可能爲「txt」返回true –

3

您可以使用Files類。 它有這種方法static boolean isExecutable(Path path)。 如果您只有String的路徑,那麼您可以使用Paths類獲得Path。像這樣

Path path = Paths.get(pathToFile); 
相關問題