2014-11-04 117 views
0

Printwriter爲什麼這樣做?寫入文件:Printwriter將正斜槓轉換爲反斜槓

File file = new File("/files/KA.txt"); 
    writer = new PrintWriter(file); 
    writer.write("HELLO"); 

在上面的代碼中,我不斷收到一個錯誤,指出:

java.io.FileNotFoundException: \files\KA.txt (The network path was not found) 

除了這不是我指定的路徑?然後,我如何指定要寫入的文件 - 通常會創建一個新文件並寫入此文件?它也會拋出錯誤,如果KA.txt不存在 - 我最好想創建一個新的文件和作家。

感謝

+1

這與'PrintWriter'無關,並且與'File'有關。這只是標準化的道路。 – 2014-11-04 10:58:36

回答

1

我非常想創建一個新的文件和作家吧。

您可以簡單地創建一個文件,

PrintWriter writer = new PrintWriter("name.txt", "UTF-8"); 
writer.println("text"); 

其中UTF-8是文件的編碼。並寫入文件,請記住它覆蓋,如果該文件存在相同的名稱

+0

@Downvoter你能解釋一下嗎? – 2014-11-04 10:58:44

+0

是的,但我想將此文件添加到我的項目中的特定位置。因此使用正斜槓? – CodeGeek123 2014-11-04 11:08:24

+0

你可以像這樣做'URL url = classLoader.getResource(「path/to/folder」); File file = new File(url.toURI());' – 2014-11-04 11:14:01

1

問題是父/文件目錄不存在,所以你必須事先使用File.mkdirs創建它。

File file = new File("/files/KA.txt"); 
    File parentFile = file.getParentFile(); 
    parentFile.mkdirs(); 
    PrintWriter writer = new PrintWriter(file); 
    writer.write("HELLO"); 
    writer.close();