我试图按照该代码读取txt文件:
static public void main(String[] args) throws FileNotFoundException{
File file = new File("C:\\Users\\Leo\\Downloads\\Ler Arquivo\\Iris.txt");
Scanner texto = new Scanner(file) .useDelimiter(",|\n");
Float[] sepal_length = new Float[1000];
int i=4;
int j=0;
while(texto.hasNext()){
if(i%4==0){
System.out.println(texto.next());
j++;
}
i++;
texto.next();
}
}
我的txt文件是这样的:
sepal_length,sepal_width,petal_length,petal_width,species
5.1,3.5,1.4,0.2,setosa
4.9,3.0,1.4,0.2,setosa
4.7,3.2,1.3,0.2,setosa
4.6,3.1,1.5,0.2,setosa
5.0,3.6,1.4,0.2,setosa
5.4,3.9,1.7,0.4,setosa
4.6,3.4,1.4,0.3,setosa
5.0,3.4,1.5,0.2,setosa
4.4,2.9,1.4,0.2,setosa
4.9,3.1,1.5,0.1,setosa
5.4,3.7,1.5,0.2,setosa
4.8,3.4,1.6,0.2,setosa
我'已创建数组以从文件中仅接收sepal_length。所以,我'我创建了一个变量i来计算每一行的每个第四个位置。当我使用变量i来计算数据位置时,我发现错误:
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Scanner.java:862)
at java.util.Scanner.next(Scanner.java:1371)
at ler.arquivo.Arquivo.main(Arquivo.java:22)
C:\Users\Leo\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53: Java returned: 1
BUILD FAILED (total time: 0 seconds)
当我不喜欢'使用变量i,只是为了在我的文件控制台上打印,我的代码完美无缺。 你们可以帮助我吗?如何将每个数据分离到我的阵列?我是Java的初学者。
答案 0 :(得分:0)
当if
语句为true
时,您在texto.next()
循环中有两行While
行代码,其中第一行代码按While
条件检查,但第二行由任何编码控制检查。