java - Java中有没有更有效的方法从文件中读取数字?

标签 java

我有一个简单的输出文本文件,名为 logOutput.txt :

2

3

4

我希望我的 Java 程序给出文件中最新的一个 ( 4 )。这是我的代码:

import java.util.*;
import java.io.*;

public class readLogFile {

    public static void main(String[] a) {
        int logNumber = 0;

        try {

            File file = new File("logOutput.txt");
            Scanner input = new Scanner(file);
            while (input.hasNext()) {
                logNumber = input.nextInt();

            }

            System.out.println("the log # is: " + logNumber);

        } catch (FileNotFoundException fne) {

        }
    }

}// end class

我主要关心的是 while 循环。有没有更高效的方法呢?在这里,我将每一行读入变量,然后覆盖它。我在想 - 也许要检查 nextInt 何时出现为空?

谢谢

最佳答案

您可以使用Integer.parse()检查输入

在 while 循环中:

String s = input.nextLine();
try{
    int i = Integer.parseInt(s);
    logNumber = i; 
} catch(NumberFormatException ex) {
    System.out.println("It is not an int");
}

如果该行不是整数或空,将抛出异常。

关于java - Java中有没有更有效的方法从文件中读取数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31553225/

相关文章:

java - 在 .NET 中使用 Java Web 服务

java - 在 Java 中绘制矩形显示像素异常

java - 我应该使用哪种模式来根据命令名称运行某些操作?

java - 如何通过 bundle 发送双值

java - Android:查询数据库时未捕获处理程序异常

java - 使用 jOOQ 使用正确的类型转换从 values() 中选择插入

java - char[] 到方法参数的 java 类的完整量化名称

java.io 的作者和读者——你怎么知道应该使用哪个?

java - HandledContributionItem.canExecuteItem 中的 NPE

java - 每当使用java在android studio中滚动回收 View 时,如何隐藏(基本上向下滑动)按钮(在底部对齐)