Java中可以使用以下步骤从压缩文件中的CSV文件中获取行数:
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
public static int getRowCountFromCSVInZip(String zipFilePath, String csvFileName) {
int rowCount = 0;
try {
ZipFile zipFile = new ZipFile(zipFilePath);
ZipEntry zipEntry = zipFile.getEntry(csvFileName);
BufferedReader reader = new BufferedReader(new InputStreamReader(zipFile.getInputStream(zipEntry)));
// 逐行读取CSV文件内容并计算行数
while (reader.readLine() != null) {
rowCount++;
}
reader.close();
zipFile.close();
} catch (Exception e) {
e.printStackTrace();
}
return rowCount;
}
String zipFilePath = "path/to/your/zip/file.zip";
String csvFileName = "your_csv_file.csv";
int rowCount = getRowCountFromCSVInZip(zipFilePath, csvFileName);
System.out.println("行数:" + rowCount);
这个方法会打开指定的压缩文件,找到对应的CSV文件,并逐行读取内容来计算行数。最后返回行数并打印出来。
推荐的腾讯云相关产品:腾讯云对象存储(COS) 腾讯云对象存储(COS)是一种高扩展性、低成本的云端存储服务,适用于存储和处理任意类型的文件,包括文本、图片、音视频等。您可以将压缩文件和CSV文件上传到腾讯云对象存储,并使用腾讯云对象存储的Java SDK来操作文件,包括获取文件行数等操作。
腾讯云对象存储产品介绍链接地址:https://cloud.tencent.com/product/cos
领取专属 10元无门槛券
手把手带您无忧上云