我有一个文件,我正在尝试阅读并获取信息,但我一直得到这个......
Exception in thread "main" java.lang.NumberFormatException: For input string: "flour"
at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:2043)
at sun.misc.FloatingDecimal.parseDouble(FloatingDecimal.java:110)
at java.lang.Double.parseDouble(Double.java:538)
at BakedItemList.readItemFile(BakedItemList.java:182)
at BakeryPart2.main(BakeryPart2.java:23)
我做错了什么?
String scan = scanFile.next();
char codeChar = scan.charAt(0);
switch (codeChar) {
case 'P': case 'p':
nameIn = scanLine.next();
flavorIn = scanLine.next();
quantityIn = Integer.parseInt(scanLine.next());
crustCostIn = Double.parseDouble(scanLine.next());
while (scanLine.hasNext()) {
for (int i = 0; i < ingredientsIn.length
&& ingredientsIn[i] != null; i++) {
ingredientsIn[i] = scanLine.next();
}
}
item = new Pie(nameIn, flavorIn, quantityIn, crustCostIn,
ingredientsIn);
itemList[itemCount] = item;
itemCount++;
break;
直到我到达crustCostIn才读到它。
答案 0 :(得分:2)
例外是如此清楚,它意味着在crustCostIn = Double.parseDouble(scanLine.next());
这一行scanLine.next()
的价值是面粉#39;。该字符串无法解析为double。请检查您的输入文件。