<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-csv</artifactId> <version>1.8</version> </dependency> public interface CSVValidator { boolean validate(CSVRecord csvRecord); } public class EmptyFieldValidator implements CSVValidator { @Override public boolean validate(CSVRecord csvRecord) { for (String field : csvRecord) { if (field.isEmpty()) { return false; } } return true; } } public class CSVValidatorFramework { private List<CSVValidator> validators; public CSVValidatorFramework() { this.validators = new ArrayList<>(); } public void addValidator(CSVValidator validator) { this.validators.add(validator); } public boolean validateCSV(File csvFile) throws IOException { Iterable<CSVRecord> records = CSVFormat.DEFAULT.parse(new FileReader(csvFile)); for (CSVRecord record : records) { for (CSVValidator validator : validators) { if (!validator.validate(record)) { return false; } } } return true; } } public class Main { public static void main(String[] args) { CSVValidatorFramework validatorFramework = new CSVValidatorFramework(); validatorFramework.addValidator(new EmptyFieldValidator()); File csvFile = new File("example.csv"); try { boolean isValid = validatorFramework.validateCSV(csvFile); if (isValid) { System.out.println("CSV file is valid."); } else { System.out.println("CSV file is not valid."); } } catch (IOException e) { e.printStackTrace(); } } }


上一篇:
下一篇:
切换中文