我在Android Studio中创建了一个应用程序,可以让您跟踪您在过山车上的次数,并计算出您已经通过的力量等等。 / p>
我希望rideCount
变量在退出时保存,所以我让它写入文件。然后,当该活动开始时,它将读取该文件并将其放入rideCount
变量中。因为它在退出时写入,所以文件中没有任何内容。
发生这种情况时我想要它做的是rideCount
设置为0
并调用设置其他所有内容的方法,但我似乎无法通过{{1变量到catch位。有人可以帮忙吗?
提前感谢。
rideCount
File file = new File("AltonAirCount.txt");
try{
Scanner input = new Scanner(file);
int rideCountFile = input.nextInt();
final int[] rideCount = {rideCountFile};
onCreate2(rideCount);
} catch (FileNotFoundException ex){
//I want it to set rideCount to 0 here
//I want it to call up onCreate2 and pass rideCount to it
}}
答案 0 :(得分:5)
rideCountFile
才能被catch块访问。
int rideCountFile;
try{
Scanner input = new Scanner(file);
rideCountFile = input.nextInt();
final int[] rideCount = {rideCountFile};
onCreate2(rideCount);
} catch (FileNotFoundException ex){
rideCountFile = 0;
// call onCreate2 again if you wish
final int[] rideCount = {rideCountFile};
onCreate2(rideCount);
}
当然,除非你需要在后面的一些代码中使用rideCountFile
,否则你在catch块中根本不需要它,所以代码可以简化为:
try{
Scanner input = new Scanner(file);
int rideCountFile = input.nextInt();
final int[] rideCount = {rideCountFile};
onCreate2(rideCount);
} catch (FileNotFoundException ex){
onCreate2(new int[] {0});
}