gpt4 book ai didi

java - 将 csv 中写入的行数与结果集行数进行比较

转载 作者:行者123 更新时间:2023-12-01 15:30:15 25 4
gpt4 key购买 nike

我需要确保使用 opencsv api 从 sql 结果集转储创建的 csv 是否成功运行。现在我正在使用 CSVWriter 写入 csv ,现在如何使用 CSVReader 读取 csv 中的行计数(假设每个结果集行保存在 CSV 中的 1 行中)并将该计数与结果集行计数进行比较。如果两者相同则成功,否则失败。

我将完整的结果集转储到 csv 文件中,如下所示

           File csvfile = new File ("erpimport_"+ getDateTimeString()+ ".csv");
CSVWriter writer = new CSVWriter(new FileWriter(csvfile), ',','"',';');
boolean includeHeaders = true;
ResultSet rs = dbtype.executeQuery(sQuery);
writer.writeAll(rs, includeHeaders);
writer.close();

此检查是否是测试写入 csv 成功或失败的有效方法?另外我如何使用 CSVReader 获取 CSV 中的行数。

谢谢普里扬克

最佳答案

如果我要验证外部库的功能,我可能不会使用同一个库来执行此操作。一种可能的解决方案是使用 BufferedReader 再次扫描文件,并计算行数,如下所示:

BufferedReader in = new BufferedReader(new File("SomeFile.csv"));
int lineCount = 0;
while((String line = in.readLine()) != null)
++lineCount;

然后您可以将 lineCount 与您的预期值进行比较。当然,这可能不是最有效的解决方案,具体取决于您执行此检查的频率以及文件输出的大小。

关于java - 将 csv 中写入的行数与结果集行数进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9611325/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com