我正在嘗試完成一項家庭作業任務,這本來很簡單。我們需要使用JFileChooser從我們的計算機中選擇一個文本文件並將其讀入我們的程序中。讀取和寫入操作BufferedReader和BufferedWriter
然後,我們對原始文本文件的內容運行排序方法。然後我們在最初選擇的文件的同一目錄中創建一個新的文本文件,並將新排序的文本從原始文本文件寫入到新創建的文本文件中。
哪個閱讀器和寫入器實用程序取決於我們。我試圖使用BufferedReader,FileReader,BufferedWriter和FileWriter。
到目前爲止,程序已成功讀取文本文件。排序方法還可以成功對文件進行排序,並且新創建的新輸出文件已成功創建。
的問題是,我似乎無法寫入任何新創建的文件,我每次檢查新文件,它總是空白我想不通,爲什麼我的BufferedWriter對象不工作的時間。任何建議從你友善的人將非常感激!
try
{
BufferedWriter buff_writer = null;
File newFile = new File("C:\\Users\\Gabe\\Documents"
+ "\\School\\ICS 340\\Assignment 1\\src\\textFile_sorted.txt");
newFile.createNewFile();
file_reader = new BufferedReader(new FileReader(selected_file));
FileWriter file_writer = new FileWriter(newFile.getAbsoluteFile());
buff_writer = new BufferedWriter(file_writer);
while((currentLine = file_reader.readLine()) != null)
{
//testing if I can write the sorted text to my new file
buff_writer.write(sort(currentLine.toCharArray()));
//testing if I can write the unsorted text to my new file
buff_writer.write(currentLine);
//random test based on frustration
file_writer.write("testing output");
//random test based on frustration
file_writer.write(currentLine);
//test to see if sort program is working
System.out.println(sort(currentLine.toCharArray()));
}
buff_writer.close();
}
catch (Exception e1)
{
e1.printStackTrace();
}
是否有必要證明這個問題?圖形用戶界面是否與沒有寫入文件的問題相關?排序?如果不是,請刪除它們。請閱讀並申請[mcve]。 –
你嘗試關閉file_writer文件嗎? –
@ Jean-FrançoisFabre謝謝你,當然這很簡單,我應該知道。還有一個問題,我如何在四行(輸入文件被格式化的方式)上獲得輸出,而不是一行上的所有輸出?只是使用「\ n」似乎並沒有工作 – GScott