java - 读取有错误的CSV文件并将 'bad lines'打印到另一个文件Java

标签 java exception readfile

所以我的任务是读取包含“员工”对象的 csv 文件。该文件包含错误,例如正常的 csv 行应为:

EmployeeId,FirstName,LastName,DOB,Gender,Position

但是文件的某些行格式错误或包含空值。例如:

9658273,bad

我需要能够读取文件并使用异常来识别错误发生的位置,并将这些“坏行”写入名为bad.txt的新文件.

我现在不确定从哪里开始,需要一些指导。我知道如何读取没有错误的文件,但在写入异常时遇到问题。

最佳答案

因此,您应该首先了解什么构成“坏线”。 为此写一些 if 语句:

例如(这只是逻辑/伪代码):

if i have a null line:
write this line into the error file
else if i have a line with first name before employeeid:
write this line into the error file
etc, etc

您需要弄清楚如何判断条目何时无序,这可能需要查看类型。例如,名称不应该是日期/时间。而性别不应该是 ID 1028473AA848737。

暂时不要太担心将错误写入 error.txt。从一个简单的开始:

if i detect an error: 
print out "ERROR DETECTED" 

然后,一旦您发现正确检测到错误,您就可以继续将它们写入文件。

希望这能为您提供一些开始!如果您需要进一步指导,请告诉我:)

关于java - 读取有错误的CSV文件并将 'bad lines'打印到另一个文件Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58003305/

相关文章:

java - Maven 发布插件 SSL 问题

java - 在 pom.xml 中添加 hibernate-search-orm 后出错

java - Spring Boot 和 Gradle 多模块项目,未能正确加载依赖项

python - 在 "validation"类中使用异常或返回状态代码更好吗?

swift - “ fatal error :在展开可选值时意外发现nil”是什么意思?

c# - X509Certificate2 构造函数中的 "The specified network password is not correct"异常

c - ReadFile() 尝试从 USB 端口读取数据时出现错误 998

c++ - 将来自 C++ 程序的注释仅转换为大写

java - 在 Jenkins 中部署 WAR 失败

java - 如何从数组列表中读取多个不带符号的整数?