gpt4 book ai didi

java - 如何从包含 double 和字符串的文本文件中打印 double ?

转载 作者:行者123 更新时间:2023-11-30 07:27:44 25 4
gpt4 key购买 nike

我正在尝试获取下面的文本文件并仅获取第一列数字以便求平均值。但是,我什至无法打印数字,因为文本文件中还有 double 之前的字符串,使我的 nextLong() 立即失败。到目前为止我的代码如下:

import java.io.*;
import java.util.ArrayList;
import java.util.InputMismatchException;
import java.util.List;
import java.util.Scanner;
public class cancer{

public static void main(String[] args) throws InputMismatchException, FileNotFoundException {
Scanner inFile = new Scanner(new FileReader("trainingDataset.txt"));
inFile.useDelimiter(",");
List<Float> arr=new ArrayList<Float>();
while(inFile.hasNext()){
float token1 = inFile.nextFloat();
arr.add(token1);
}
inFile.close();
Float[] tempsArray = arr.toArray(new Float[0]);
for (Float s : tempsArray) {
System.out.println(s);
}
}

}

但我得到这个输出:

Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextFloat(Unknown Source)
at cancer.main(cancer.java:13)

我知道我收到此错误是因为 double 之前的字符串。我需要得到这些数字,这样我就可以对它们进行平均,但我不知道如何。请帮忙!

这是文本文件:[训练数据集.txt] http://txt.do/5w3em

最佳答案

只需忽略第一个值不是数字的行。即,将每一行作为字符串而不是 float 读取,然后尝试将该行转换为 float 。如果由于数字格式异常而失败,请忽略该行并移至下一行。

关于java - 如何从包含 double 和字符串的文本文件中打印 double ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36584124/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com