所以我想读取一个包含以空格分隔的数字的文件。例如,文件“try.txt”内容为:
1 2 3
4 5 6
7 8 9
我知道如何读取这些数字并将它们存储在一个带有Scanner的数组中,并且两个嵌套for循环。请注意这里任何可能的sintax错误。它看起来像是:
int i,j;
Scanner sc
for(i=0;i<array.length;i++){
for(j=0;j<array[i].length;j++){
array[i][j]=sc.nextInt();
}
}
所以我的问题是,如何检查我正在阅读的内容实际上是一个整数?如果nextInt()找到一个字母或另一个ASCII符号会发生什么?
谢谢。
答案 0 :(得分:0)
试试此代码
if (obj instanceof Integer)
{
// is a integer
}
else
{
// is not
}
答案 1 :(得分:0)
最后,我使用InputMissmatchException解决了这个问题。这是一个例子:
Scanner sc = new Scanner(System.in);
try{
int a = sc.nextInt();
}catch(java.util.InputMismatchException e) {
System.out.println("Invalid file content");
}