以下のコードを使用して、レコードをファイルに書き込みました。レコードはファイルに書き込むことができますが、このメソッドの例を呼び出すたびに1行に追加されます。
ハローワールドハローワールドハローワールドハローワールド
出力を以下のようにコードを変更して、テキストを読み取るときにline.hasNextLine()を使用して確認できるようにするにはどうすればよいですか?
こんにちは世界
こんにちは世界
こんにちは世界
こんにちは世界
// Create file
FileWriter fstream = new FileWriter(fileName, true);
BufferedWriter out = new BufferedWriter(fstream);
out.write(c.toString());
//Close the output stream
out.close();
// Code I used to read record I am using | as a seperator name and id
String fileName = folderPath + "listCatalogue.txt";
String line = "";
Scanner scanner;
String name, id;
scanner = new Scanner(fileName);
System.out.println(scanner.hasNextLine());
while (scanner.hasNextLine()) {
line = scanner.nextLine();
System.out.println(line);
StringTokenizer st = new StringTokenizer(line, "|");
name = st.nextToken();
id = st.nextToken();
catalogues.add(new Catalogue(name, id));
}
out.write(c.toString());
out.newLine();
ここに簡単な解決策があります、私はそれがうまくいくことを願っています
編集:私は明らかに推奨されないアプローチである「\ n」を使用していた、修正された答え。
私が正しく理解したかどうかはわかりませんが、これはあなたが言っていることですか?
out.write("this is line 1");
out.newLine();
out.write("this is line 2");
out.newLine();
...
Javaが提供するnewLine()
メソッドを呼び出して、ファイルに新しい行を挿入できます。
詳細については- http://download.Oracle.com/javase/1.4.2/docs/api/Java/io/BufferedWriter.html#newLine()