java - 在换行符 java 上限制 EOF

标签 java newline bufferedreader eof

我在 Java 中使用 this 获得了正确的 EOF 标准问题,它做的很好。但是,当程序要求在每个输入案例后输入一个空行时,就会出现问题。以下代码适用于 EOF。

    String line;
    BufferedReader read = new BufferedReader(new InputStreamReader(System.in));
    try {
        while((line = read.readLine()) != null){
            n = Integer.parseInt(line);
        }
    }
     catch (IOException e) {} 

但问题是,我必须解决一个问题,即在输入每个案例后,都会输入一个空白的新行。结果我得到一个 NumberFormatException,这也是意料之中的。我已经尝试了所有我能做的,包括 try-catch() 机制。

如果我的代码不会终止或在空白行输入时抛出异常,那就太好了。

最佳答案

执行此操作的最佳方法可能是在执行任何操作之前检查输入的长度。所以:

if(line.length() > 0) {
    //do whatever you want
}

关于java - 在换行符 java 上限制 EOF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27194341/

相关文章:

java - 什么 Java 函数 offsetByCodePoints 真正接受参数?

java - Java 的 -Xms 和 -Xmx 选项的速度权衡

c# - 如何消除字符串中的所有换行符?

javascript - 在文本区域中将 <br> 替换为\n 在 IE9 中不起作用

java - 如何在 Java 中使用 BufferedReader 读取文件结尾(EOF)?

java - 为什么 executeUpdate() 函数不起作用?给出在普通项目而不是基于 maven 的项目中解决的步骤

c - 著名的 scanf() 换行问题

java - Bufferedreader 读取下一行

java - 使用两个数组搜索文件

java - 一旦 session 过期,Spring MVC 将用户重定向到登录页面