2013-03-06 46 views
1

我有用來獲取來自用戶的數據文件的JFileChooser對象。我需要做的是創建一個文件對象和PrintWriter對象,以便我可以寫入名爲「output.txt」的文件。該文件應寫入從中檢索數據文件的同一目錄。使用一個PrintWriter和文件對象寫入到輸出文件

到目前爲止,我曾嘗試:

// Write to a text file` 

File file = new File ("output.txt"); 
PrintWriter printWriter = new PrintWriter (f); 

的這段代碼創建輸出文件,但我需要將它寫入該數據的文件來自的同一目錄下。

首先想法是調用.getPath()方法(見下文)JFileChooser中物體上。

String fileDir = inputFile.getPath(); 
String fileName = "output.txt"; 
File f = new File (fileDir + "/" + fileName); 
PrintWriter printWriter = new PrintWriter (f); 

想法?

回答

4

inputFile.getPath()將讓你的文件路徑。你需要inputFile.getParent()這將得到你的文件的目錄。

String fileDir = inputFile.getParent(); 
String fileName = "output.txt"; 
File f = new File (fileDir,fileName); 
PrintWriter printWriter = new PrintWriter (f); 
+3

你可以使用'new File(fileDir,fileName)',不需要串接。從['File(String,String)'](http://docs.oracle.com/javase/7/docs/api/java/io/File.html#File(java.io.File,%20java.lang) .String)) – 2013-03-06 04:39:20

+0

@LuiggiMendoza即使是防止錯誤也是很好的一點。 – deadlock 2013-03-06 04:41:14

+0

誤解了API。感謝您的澄清! – Jonathan 2013-03-06 04:49:45