2011-03-01 48 views

回答

26

如果應用程序的當前目錄。如果例如通過使用

new FileOutputStream("myfile") 

則在「當前」目錄下創建的,它可以通過調用

System.getProperty("user.dir"); 

不過,如果你通過調用本地方法(非常改變當前目錄檢索創建文件不太可能!),該屬性不更新。它可以被看作應用程序的初始當前目錄。

如果在批處理文件中啓動Java應用程序,並雙擊鏈接,當前目錄將成爲批處理文件所在的目錄,但可以在鏈接中更改。

如果啓動命令行的Java應用程序,你已經知道你是在目錄中。

如果從IDE啓動Java應用程序,當前目錄通常是項目的根,但可以通常在啓動配置中進行配置。

UPDATE 2017-08:

你也總是new File(".").getAbsolutePath()找到當前正確的位置。

-5

新創建的文件?呃......似乎很尷尬。

如果您使用的任何IDE如Eclipse,那麼將會在您提到的本地驅動器中創建一個workspace。將會有一個source文件夾。然後,當您繼續創建不同的項目並創建不同的java文件時,相應地,這些文件將被創建並存儲在各自的source文件夾中。該.class文件也被存儲在同一目錄中.java文件

我猜想,這多少隻有我能回答你的解釋不全問題。

+7

嗯,我想我知道你爲什麼收到4年前downvote ...你根本不明白***完成***問題 - OP想知道當他/她通過傳遞文件名(例如)* FileWriter *來存儲文件時Java將文件寫入哪個目錄。打敗我,爲什麼任何人都會通過解釋Eclipse作爲IDE如何創建文件來回答這樣的問題......以一種充滿傲慢的櫻桃來滿足它。我會投下來的,但我懷疑這些年過後這是否有意義。 – 2015-04-06 11:27:48

0

希望您使用的是eclipse或net beans ide。新創建的文件將根據您如何創建文件存儲在項目工作區中。 例如,您可以創建通過使用文件FileOutputStream中,FileWriter的,createfilename 2) 1)文件的PrintWriter等

相關問題