问题描述
作为学习Java的一种方式,我试图写一些模拟银行的东西(添加或删除数字)。我成功创建了一个文件(如果尚不存在),然后从中读取,但是当我尝试写入该文件时,它失败了。我从FileWriter开始,它只是擦除了文件(balance.txt)中的文本。然后,我尝试使用BufferedWriter,并将其写入文档,但这只是符号,而不是实际的文本/数字。我知道我是编码方面的新手,但是对此有解决方案吗?谢谢。
if (choice.equals("ADD")){
System.out.println("Currently selected: " + choice);
//write to file
try {
String filePath = "C:\\Users\\user\\Desktop\\programming\\projects\\java\\RandomStuff\\Bank\\balance.txt";
// System.out.println("How much would you like to add?");
// Scanner inputAdd = new Scanner(system.in);
// String balancetoAdd = inputAdd.nextLine();
// writetoFile.write(balancetoAdd);
int balancetoAdd = 1;
BufferedWriter out = new BufferedWriter(new FileWriter(filePath));
out.write(balancetoAdd);
out.close();
System.out.println("Added: " + balancetoAdd);
} //try end
catch(IOException e){
System.out.println("Error(line56): " + e.getMessage());
}
解决方法
public FileWriter(字符串fileName, 布尔附加)
我认为您应该使用append编辑文件。
BufferedWriter out = new BufferedWriter(new FileWriter(filePath,true));