我正在與某人一起工作,我們需要能夠加載和保存文件。目前我們這樣做:從eclipse自加載文件
robot1.getComputer().loadAndCompileProgram(new File("C:\\Projects\\IO\\program1.txt"));
但是,這要求他和我都有這個程序在完全相同的位置。我們寧願將其存儲在我們的Eclipse項目,並能夠加載的文件不管是什麼程序1的「滿」的位置是在我們的電腦.. 我們願意做這樣的事情:
robot1.getComputer().loadAndCompileProgram(new File("/Project D3 1.15/Progs/program1.txt"));
項目D3 1.15是Java項目,程序1的Eclipse中的完整字符串是Eclipse的路徑。但是這不起作用。是否有可能做我們想要的?
這是行不通的。 「..」是指當前的上下文。當前上下文(aka系統路徑)是運行你的程序的java.exe(或者他們在linux上的任何東西)的路徑...所以「..」指向類似「C:\ Java」的那個 –
這是錯誤的,它確實有效。當從Eclipse啓動時(這是OP所說的),當前的上下文是Eclipse項目的根目錄。如果項目名稱與根目錄相同,那麼上面的兩行代碼都可以工作,否則只有第一行。 – Alex
此外,這很容易測試。創建一個名爲foobar的eclipse項目,創建一個其主要方法爲'FileUtils.writeStringToFile(new File(「../ foobar/baz.txt」),「hi!」);'的類。現在執行程序並使用eclipse刷新項目。您將在'foobar'項目中看到一個名爲'baz.txt'的新文件。 – Alex