Что бы я ни сделал, я не писал новые данные в новой строке в файле. Как я могу это исправить?Я не могу написать данные по новой строке в файле
Для балла Пример Марии является 100 и оценка кузнеца составляет 150, а в текстовом файле это
mary 100smith 150
Я хочу smith 150
в новой строке
public class HighScores {
public HighScores(){
String txt = "";
Scanner sc = null;
PrintWriter pw = null;
File Checker = null;
try{
Checker = new File("highScores.txt");
if(!Checker.exists()){
Checker.createNewFile();
}
sc = new Scanner(new File("highScores.txt"));
while(sc.hasNextLine()){
txt = txt.concat(sc.nextLine()+"\n");
}
String score=String.valueOf(Game3.score);
String name = NewPlayer.name;
txt = txt.concat(name + " "+ score +"\n");
pw = new PrintWriter(Checker);// writing the checker
pw.write(txt +"\r\n");
pw.println() дает та же проблема.
}catch(FileNotFoundException fnfe){
fnfe.printStackTrace();
}catch(IOException ioe){
ioe.printStackTrace();
}finally{
sc.close();
pw.close();
}
}
}
Не используйте CONCAT() и жесткий код '\ n'or' \ г \ n'. Откройте PrintWriter и используйте println(), чтобы написать текст, за которым следует EOL, или print(), чтобы написать текст, за которым не следует EOL. И уважайте соглашения об именах Java: переменные начинаются с строчной буквы. –
Я использовал println, но опять же данные не были в новой строке – hekinci
Невозможно изменить весь свой код и написать этот новый комментарий менее чем за 1 минуту. Повторно прочитайте мой комментарий. –