java - I/O hasNextLine() - 在java中检查空行时跳过每一行
问题描述
我想从文本文件中读取由空行分隔的多个矩阵。我一步一步走。现在作为测试的一部分,我只想通过在每个矩阵之间添加“空白”字来将矩阵显示到控制台。当我运行下面的代码时,只显示每隔一行?如何识别空行?实际发生了什么?
while (scan.hasNextLine()) {
//check for blank line
if (scan.nextLine().trim().length()==0){
System.out.println("BLANK");
}else {
System.out.println(scan.nextLine());
}
}
解决方案
nextLine
每次该行不为空白时,您都会调用两次。
读取该行一次并将其保存在变量中
while (scan.hasNextLine()) {
//check for blank line
String val = scan.nextLine();
if (val.trim().length()==0){
System.out.println("BLANK");
}else {
System.out.println(val);
}
}
推荐阅读
- applescript - 在预览中执行自动另存为
- java - 如何使用观察者模式刷新 SpringSecurityConfig?
- angular - 如何在服务中包含私钥而不将其放在前端代码中?
- c# - 如何为封闭泛型的闭包类型的完整层次结构解析所有服务类型
- jquery - 设置下拉列表的文本值不断重置
- python - 如何让 Python 打开的终端保持活跃?
- excel - 使用现有图像形状更改按钮图像
- spring - spring security中全局认证和本地认证的区别
- javascript - 使用 Redux 为 react-country-region-selector 提交表单
- python - 我正在为 beta 桶重构而苦苦挣扎