gpt4 book ai didi

java - 如何获取csv文件中每个字段的最大长度?

转载 作者:行者123 更新时间:2023-12-01 23:08:55 24 4
gpt4 key购买 nike

我需要找出 csv 文件中每个字段的最大长度。

例如在以下 cvs 文件中,因为1) var1 具有最长的字符串 shj,为 3 个字符,

2) var2 具有最长的字符串 asdf - 4 个字符

3) var3asddfs - 6 个字符

var1,var2,var3
a,asdf,df
aa,,
shj,,asddfs

所以,我需要的结果是数组int [] maxLength = {3,4,6}

<小时/>

到目前为止,我正在使用 CSV Reader API 。这是我的代码

CSVReader reader = new CSVReader (new FileReader(Looks.fileName));
int [] maxLength = new int[reader.readNext().length];
for (int i = 0; i < row.length; i++) {
maxLength[i] = row[i].trim().length() ;
}
while ((row = reader.readNext()) !=null ) {
for (int i = 0; i < row.length; i++) {
maxLength[i] = Math.max(maxLength[i] , row[i].trim().length() );
}
}
reader.close();

效果很好。但对于大文件来说太慢了。我有大约 100,000,000 行。

有什么有效的方法可以做到这一点吗?我可以使用 setAsciiStream 以某种方式更有效地估计长度吗?

最佳答案

CSVReader 是否已缓冲?如果没有,请用 BufferedReader 包装您的 FileReader(并使其缓冲区大小足够大)。

关于java - 如何获取csv文件中每个字段的最大长度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22329113/

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