Filled/Unfilled 来自文件的矩形
Filled/Unfilled Rectangle From File
该项目应该读取一个文件,其中文件的第一行告诉要制作多少个矩形,其余的是尺寸以及是否填充。假设一个 Rectangle class 和一个 toString 来格式化矩形。当设置变量 numLines 时,我在 while 循环的第一行收到输入不匹配错误,需要一些帮助。
public static void main(String[] args) {
int columns = 0;
int rows = 0;
int numLines = 1;
String fill;
boolean filled = false;
//first line of file creates array size
Rectangle[] rectangle = new Rectangle[numLines];
Scanner inFile = new Scanner("rectangle.txt");
//reads file
while (inFile.hasNext()) {
numLines = inFile.nextInt();
for (int i=0; i<numLines; i++) {
columns = inFile.nextInt();
rows = inFile.nextInt();
fill = inFile.nextLine();
if (fill.equals("filled")) {
filled = true;
}
Rectangle rec = new Rectangle(rows, columns, filled);
rectangle = new Rectangle[numLines];
rectangle[i] = rec;
}
//example of file being read
6
6 3 filled
3 6 unfilled
4 4 filled
6 6 unfilled
9 4 filled
4 8 unfilled
I am getting an input mismatch error
Scanner inFile = new Scanner("rectangle.txt");
您正在使用文本字符串而不是文件创建扫描仪。文本字符串“rectangle.txt”不是一个整数值。
如果你想从一个文件中读取,那么你需要指定一个文件作为参数:
Scanner inFile = new Scanner(new File("rectangle.txt"));
该项目应该读取一个文件,其中文件的第一行告诉要制作多少个矩形,其余的是尺寸以及是否填充。假设一个 Rectangle class 和一个 toString 来格式化矩形。当设置变量 numLines 时,我在 while 循环的第一行收到输入不匹配错误,需要一些帮助。
public static void main(String[] args) {
int columns = 0;
int rows = 0;
int numLines = 1;
String fill;
boolean filled = false;
//first line of file creates array size
Rectangle[] rectangle = new Rectangle[numLines];
Scanner inFile = new Scanner("rectangle.txt");
//reads file
while (inFile.hasNext()) {
numLines = inFile.nextInt();
for (int i=0; i<numLines; i++) {
columns = inFile.nextInt();
rows = inFile.nextInt();
fill = inFile.nextLine();
if (fill.equals("filled")) {
filled = true;
}
Rectangle rec = new Rectangle(rows, columns, filled);
rectangle = new Rectangle[numLines];
rectangle[i] = rec;
}
//example of file being read
6
6 3 filled
3 6 unfilled
4 4 filled
6 6 unfilled
9 4 filled
4 8 unfilled
I am getting an input mismatch error
Scanner inFile = new Scanner("rectangle.txt");
您正在使用文本字符串而不是文件创建扫描仪。文本字符串“rectangle.txt”不是一个整数值。
如果你想从一个文件中读取,那么你需要指定一个文件作为参数:
Scanner inFile = new Scanner(new File("rectangle.txt"));