Java 从文件中获取整数时出错(将字符串转换为Int)
我有一个文件:student.txtJava 从文件中获取整数时出错(将字符串转换为Int),java,file,Java,File,我有一个文件:student.txt 1 Adam 50 50 50 2 Eric 34 28 38 3 Joash 44 48 49 4 Bill 34 30 45 我有两个班:一个是主班,另一个做所有的工作 // Class 1 ****************** public class Main { pu
1 Adam 50 50 50
2 Eric 34 28 38
3 Joash 44 48 49
4 Bill 34 30 45
我有两个班:一个是主班,另一个做所有的工作
// Class 1 ******************
public class Main {
public static void main(String[] args) {
readfile a = new readfile();
a.openFile();
a.readFile();
a.closeFile();
}
}
// ********* Class 2
import java.util.*;
import java.io.*;
import java.lang.*;
public class readfile {
private Scanner x;
public void openFile(){
try{
x = new Scanner(new File("student.txt"));
}
catch(Exception e){
System.out.println("Error");
}
}
public void readFile(){
int a=0;
String b;
int c=0;
int d = 0;
int e = 0;
int total;
while(x.hasNext()){
a = x.next();
b = x.next();
c = x.next();
d = x.next();
e = x.next();
int total = c+d+e;
total = x.nextInt();
System.out.printf("%s %s %s %s %s %s/n",a,b,c,d,e,total);
}
}
public void closeFile(){
x.close();
}
}
我有两个错误:
1) 这是在a=x.next()代码>上面写着什么
无法从字符串转换为int
你能告诉我怎么修吗
2) 网址:
线程“main”中出现异常
错误java.lang.NullPointerException
如何解决此问题?请尝试:
a = Integer.parseInt(x.next());
而不是
a = x.next();
你可以尝试使用
a = x.nextInt();
Scanner.next()以字符串形式返回下一个标记。当java试图将int a设置为字符串时,会发生错误。您可以使用Scanner.nextInt()修复此问题,它将以整数形式返回下一个标记,或者如果下一个标记不是int,则引发错误。如果x.next()
返回什么?你把它分配给什么?为什么这个inttotal=c+d+e
然后在下一行中使用此total=x.nextInt()对其进行更改代码>?为什么不直接使用x.nextInt()
?因为这样您就不必无缘无故地使用额外的Integer.parseInt()
代码。为什么我仍然在以下行中遇到错误:int total=x.nextInt()??上帝啊!尝试total=Integer.parseInt(x.next());Too你应该先做基本功:-)