【问题标题】:Read File that has Float values as Array读取具有浮点值作为数组的文件
【发布时间】:2021-10-13 05:39:29
【问题描述】:

我有一个包含一些浮点值的文件,我正在尝试读取它们,但它无法正常工作 文件是这样的:

[0.97265625, 0.96484375, 0.9765625, 0.9765625, 0.97265625, 0.97265625, 0.97265625, 0.97265625, 0.9765625, 0.9765625, 0.9765625, 0.9765625, 0.9765625, 0.9765625]

到目前为止,我收到输入不匹配错误。

public static void main(String[] args) throws FileNotFoundException
    {
        File txt = new File("C:/Users/User1/Documents/rboukarf_hard.txt");

      Scanner scanner = new Scanner(txt);
        try{
        String print = "";
        while (scanner.hasNext()) {

            System.out.println(scanner.nextFloat());
                if (scanner.nextFloat() < 1){
                    print = print + "0 ";

                }
                else {
                    print = print + "2 ";


            print = print + "\n";
        }
        System.out.println(print);
    }
        }
        catch (Exception e) {
            System.out.println("Exception thrown: " + e);
        }
}

【问题讨论】:

  • 你知道你在循环中调用了两次nextFloat 对吧......?
  • 我得到一个输入不匹配异常
  • scanner.useDelimiter(",[ \r\n]*"); 将需要(希望那些方括号不在文件中)

标签: java arrays file file-upload


【解决方案1】:

类似的东西(见我关于方括号的评论)

    public static void main(String[] args) {
        try {
            File txt = new File("floats.txt");

            Scanner scanner = new Scanner(txt);
            scanner.useDelimiter(",[ \r\n]*");
            String print = "";
            while (scanner.hasNextFloat()) {

                if (scanner.nextFloat() < 1) {
                    print = print + "0 ";

                } else {
                    print = print + "2 ";

                    print = print + "\n";
                }
                System.out.println(print);
            }
        } catch (Exception e) {
            System.out.println("Exception thrown: " + e);
        }
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-05
    • 1970-01-01
    • 2021-10-19
    • 2012-08-08
    • 2017-12-15
    • 2013-01-07
    相关资源
    最近更新 更多