Java:银行模拟:写入文件,删除文本/写入符号

问题描述

作为学习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));