import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
public class GameRunner {
public static void main(String[] args) {
Scanner scan = new Scanner (System.in);
System.out.println("Welcome to blackjack!\nEnter your name please.");
String name = scan.nextLine();
System.out.println("Here are your cards " + name);
Deck theDeck = new Deck(1, true);
if (mySum > dealerSum && mySum <= 21 || dealerSum > 21){
System.out.println("You win!");
}//if
else if (mySum == dealerSum) {
System.out.println("It's a draw!");
}//else
else {
System.out.println("Dealer wins!");
}
}//main
public void highScore() throws IOException{
File myFile=new File("highscore.txt");
FileWriter fw=new FileWriter(myFile, true);
String end= "You have beaten the dealer " + "times.";
fw.write(end);
fw.close();
}
}
这不是我的所有代码,但我想让它计算用户获胜的次数,并在经销商获胜时停止,然后将数字(即他们的高分)写入文件。此外,当我刷新或运行我的程序时,我的文件没有出现,我已经到处搜索它。
答案 0 :(得分:0)
确保冲洗它。
fw.flush();
除了你手头创建.txt之外。
myFile.createFile();
请阅读此内容,http://docs.oracle.com/javase/tutorial/essential/io/file.html
答案 1 :(得分:0)
highScore
函数似乎可以保存“某些东西”。
但你从来没有真正称呼它。
即使你打电话,也只会在其中写下这一行:
你已经打败了经销商。
没有意义。 看起来好像你想在“打败经销商N次”中写一个数字N, 但你不是那样做的。 因此,此代码看起来不完整,就像您停止在中间编写它一样。
如果您确实调用此方法,
然后将创建文件。
由于在new File("highscore.txt");
中您使用了相对路径"highscore.txt"
,
该文件将在执行目录中创建。
如果从IDE运行此命令,则执行目录通常是项目的目录。
另一种方法是使用绝对路径,例如"c:/highscore.txt"
,
那么你绝对可以轻松找到它。
答案 2 :(得分:0)
上面说明的答案绝对正确,但你也可以静态保存,如果你想通过在功能上使用简单的char来显示他已经咬了多少次,只需增加计数器数。 Nd用新文本清除文件文本或仅通过替换字符串
的函数替换数字