【发布时间】:2020-05-16 22:11:10
【问题描述】:
我正在尝试让我的程序创建另一个可由用户命名的文件并打印出用户想要打印的随机数。不幸的是,当我运行我的程序时,它会一直运行,直到我到达程序状态的最后一个“你想使用什么文件名”
"找不到文件 java.io.FileNotFoundException: (句柄是 无效)”
我想知道如何让程序实际创建文件并让用户为文件选择自己的名称。
import java.io.*;
import java.util.*;
public class chooseRandNum{
public static void main(String[] args){
Random rand = new Random();
Scanner key = new Scanner(System.in);
System.out.println("How many random numbers do you want? ");
int totalRand = key.nextInt();
System.out.println("What is the smallest random number? ");
int smallRand = key.nextInt();
System.out.println("What is the largest random number? ");
int largeRand = key.nextInt();
System.out.println("What filename do you want to use? ");
String fname = key.nextLine();
File outputFile = new File(fname);
PrintStream outputStream = null;
try{
outputStream = new PrintStream(outputFile);
}
catch (Exception e){
System.out.println("File not found " + e);
System.exit(1);
}
int n = rand.nextInt(largeRand - smallRand + 1);
for(int i = 0; i <= 5; i++){
for(int j = 0; j <= totalRand; j++){
outputStream.print(n + ",");
}
outputStream.println();
}
}
}
【问题讨论】:
-
您可能想在尝试为其打开输出流之前调用
outputFile.createNewFile()。 -
@Powerlord 其实没必要。
标签: java output java.util.scanner printwriter