java - Java读取文件:列出无效数据
问题描述
我想列出一个文本文件中的所有无效数据,如下所示:
1299
德威
1237
213
公里
任何小于 1000 或非数字的都是无效的。我的代码如下所示:
String score;
int count=0;
int number;
TextIO.readFile("scores.txt");
System.out.println("reading the file now...");
while (!TextIO.eof())
{
count ++;
score = TextIO.getln();
number = Integer.parseInt(score);
if (number < 1000)
{
System.out.println(score);
}
然而,它未能列出所有非数字数据。有人可以帮助我吗?谢谢!
解决方案
这是一种方法:
try {
int number = Integer.parseInt(score);
if (number >= 1000) {
// number is valid, skip
continue;
}
} catch (NumberFormatException nfe) {
// not a number; fall through
}
System.out.println(score);
或者你可以让它自然循环并复制 print 语句:
try {
int number = Integer.parseInt(score);
if (number < 1000) {
System.out.println(score);
}
} catch (NumberFormatException nfe) {
System.out.println(score);
}
推荐阅读
- javascript - 如何将电子 js 应用程序用作一个本地主机链接的网络浏览器?
- php - 如何使用 php 中的 htaccess 文件从 url 中删除查询字符串
- javascript - React Hooks trying to useState in array ref
- c# - 配置窗口身份验证在关闭所有并重新打开浏览器 ASP.NET MVC 后显示登录提示
- javascript - YOLO 对象识别更快速、更一致
- python - 将数据对字符串更改为 JSON 以供 python 返回 Zapier
- swift - 不同的 SKTexture 会导致疯狂的延迟
- python - 我如何理解运行此 Python 程序时遇到的错误?
- javascript - 存储在 localStorage 中显示 2 个值作为调试器和未定义
- python - 如何提取由点分隔的数字,后跟一组特定的单词正则表达式 python?