「test.txt」という名前のファイルを作成した後、入力をファイルに書き込むためにユーザーからの入力を受けました。すべてうまく動作します。プログラムは何のエラーも全く表示しません。ファイルが作成され、プログラムはユーザーからの入力を受け取りますが、ファイルの内容を確認すると空になりました。私のコードで何が間違っているのか誰でも分かりますか?コードは以下の通りです。ファイルを作成してそれに書き込む
package InputOutput;
import java.io.*;
public class CharacterFileReaderAndFileWriter{
private BufferedReader br = null;
private BufferedWriter bw = null;
private PrintWriter pw = new PrintWriter(System.out, true);
public File createFile() throws IOException{
File f = new File("test.txt");
return f;
}
public void writeToFile() throws IOException{
try{
bw = new BufferedWriter(new FileWriter(createFile()));
}
catch(FileNotFoundException ex){
ex.printStackTrace();
}
//take input from the console (user)
br = new BufferedReader(new InputStreamReader(System.in));
String s;
pw.println("Please enter something");
pw.println("To stop the program, enter 'stop'");
do{
s = br.readLine();
if(s.compareTo("stop")==0)
break;
s+= "\r\n";//adding an new line to the string s
bw.write(s);
}
while(s.compareTo("stop")!=0);
br.close();
bw.close();
}
public static void main(String[] args) throws IOException{
CharacterFileReaderAndFileWriter cfr = new CharacterFileReaderAndFileWriter();
cfr.writeToFile();
}
}
私はあなたのコードを試しました。それは何の変更もなく私のためにうまくいった。出力ファイルには、入力したテキストが含まれています。特定の条件下でファイルの内容を取得していませんか? – krishnakumarp
これで動作します。ソースコードファイルと同じフォルダにファイルが作成されていないため、フルパスを指定しました。あなたにお時間をいただきありがとうございます。心から感謝する。 :) –
@krishnakumarpええ、IDEは実際にファイル名でディレクトリに私のためのファイルを作成しませんでした。だから私はファイルを作成中に完全なパスを入力しました。今すぐ正常に動作しています –