Java 识别无效数据并通过控制台上的消息向用户报告

Java 识别无效数据并通过控制台上的消息向用户报告,java,Java,****我需要这个输入文件的解决方案**** 要求 文件中存储的数据可能已损坏。对于此要求,程序必须检查从文件读取的每行数据,识别无效数据,并通过控制台上的消息向用户报告这些数据。该计划至少应检查并验证以下可能的问题—— 主队名称可能丢失 客场球队的名字可能不见了 主队得分可能缺失 客队的比分可能不见了 字段分隔符可能丢失或使用了错误的字段分隔符 主队得分可能不是有效的整数 客场球队得分可能不是有效的整数 示例输入文件为: Aston Villa : Middlesbrough : 3 :

****我需要这个输入文件的解决方案****

要求

文件中存储的数据可能已损坏。对于此要求,程序必须检查从文件读取的每行数据,识别无效数据,并通过控制台上的消息向用户报告这些数据。该计划至少应检查并验证以下可能的问题——

  • 主队名称可能丢失
  • 客场球队的名字可能不见了
  • 主队得分可能缺失
  • 客队的比分可能不见了
  • 字段分隔符可能丢失或使用了错误的字段分隔符
  • 主队得分可能不是有效的整数
  • 客场球队得分可能不是有效的整数
示例输入文件为:

Aston Villa : Middlesbrough : 3 : 1
Chelsea : Manchester City : 1 // only 3 fields provided
Tottenham Hotspur : Stoke City : 0 : 0
Hull : : 2 : 3 // missing away team name
West Ham United : Wigan Athletic : 2 : 1
: : 2 : 0 // both team names missing
Fulham : Liverpool : 1 : 2
Arsenal Liverpool : 2 : 2 // missing delimiter (:) between teams
Sunderland : Newcastle United : 0 : 4
Hull : Liverpool : 5 : x // ‘x’ given instead of away team score

@快乐。你能提供你到目前为止所做的尝试,以及对无效数据的更多解释吗。我不确定哪些数据是无效的,直到我们没有得到你的适当要求。嗨,欢迎来到stackoverlow。这不是免费的代码编写服务。我们可以帮助您解决代码中的特定问题,但我们不会为您编写代码。请看。做一些研究,然后提出你的问题并添加你的代码。有什么问题吗?当你运行它时会发生什么?你以为会发生什么?有错误吗?祝你好运这不是一个问题,这是让我们做OP的家庭作业的廉价尝试,应该结束。@happydent请自己解决。
import java.util.Scanner;

public class Main
{
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while(true) {
            String s = sc.nextLine();
            if(s.trim().isEmpty()) break;
            try {
                String parts[] = s.split(":");
                if(parts.length != 4 || parts[0].trim().length() == 0 || parts[1].trim().length() == 0) {
                    throw new Exception();
                }
                Integer.parseInt(parts[2].trim());
                Integer.parseInt(parts[3].trim());
                System.out.println("valid");
            } catch (Exception e) {
                System.out.println("invalid");
            }
        }
    }
}