Java - 使用扫描仪读取同一行上的多个项目

标签 java java.util.scanner

我正在尝试加载格式如下的文本文件:

 int String int

 int String int

 int String int

我想做的是读取这三个值并将它们放入构造函数中

我通常解决此类问题的方法就是简单地这样做

        int t = infile.nextInt();
        String d = infile.nextLine();
        int p = infile.nextInt();


        Entry e = new Entry(t,d,p);

但是,只有当 t、d 和 p 由于 nextInt() 和 nextLine() 而位于不同的行时,这才有效

我的问题是,如何继续读入同一行的 3 个值,然后转到下一行?

最佳答案

像这样解析它:

int t = infile.nextInt(); //reads int
String d = infile.next(); //reads the next String before a blank space " "
int p = infile.nextInt(); //reads int
Entry e = new Entry(t,d,p); //use your data
infile.nextLine(); //read the line escape "\n" or "\r\n"

关于Java - 使用扫描仪读取同一行上的多个项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25488821/

相关文章:

java - 将大型 Java 应用程序从 MyBatis 迁移到 ORM

java - try-with-resources 无法调用 close()

java - 如何使用JSTL标签格式数据

java - 如何修复输入文件中的 NoSuchElementException?

java - java中如何通过文件名获取完整目录

java - 组织简单的 boolean 逻辑模拟器 - Java

java - 使用 Java 中的 Lambda 将 CloudWatch 中的 AWS S3 事件发送到我的服务器

java - 线程中的异常 "main"java.lang.NumberFormatException : For input string: "1"

使用 scanner.hasNext() 时出现 Java NullPointerException;

java - Else 语句仅在奇数输入上给出输出