要使用Java从Excel (csv)文件中删除行,可以按照以下步骤进行操作:
WorkbookFactory.create()
方法打开Excel文件,并使用getSheet()
方法获取工作表。getRow()
方法获取行,然后使用行的索引或其他条件进行判断。removeRow()
方法删除行。write()
方法将修改后的工作表写回到文件中。以下是一个示例代码,演示如何使用Java从Excel (csv)文件中删除行:
import java.io.FileInputStream;
import java.io.FileOutputStream;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class ExcelRowDeletion {
public static void main(String[] args) {
String filePath = "path/to/excel/file.xlsx";
int rowToDelete = 2; // 要删除的行号
try {
FileInputStream file = new FileInputStream(filePath);
Workbook workbook = WorkbookFactory.create(file);
Sheet sheet = workbook.getSheetAt(0);
// 删除指定行
sheet.removeRow(sheet.getRow(rowToDelete));
// 重新调整行号,使行号连续
int lastRowNum = sheet.getLastRowNum();
for (int i = rowToDelete + 1; i <= lastRowNum; i++) {
Row row = sheet.getRow(i);
if (row != null) {
sheet.shiftRows(i, i, -1);
}
}
// 写回到文件中
FileOutputStream outFile = new FileOutputStream(filePath);
workbook.write(outFile);
outFile.close();
System.out.println("行删除成功!");
} catch (Exception e) {
e.printStackTrace();
}
}
}
请注意,此示例代码假设要删除的行是固定的,并且Excel文件的格式为xlsx。如果要删除的行是根据特定条件确定的,可以根据实际需求进行修改。另外,如果Excel文件的格式为xls,需要使用HSSFWorkbook类代替XSSFWorkbook类。
推荐的腾讯云相关产品:腾讯云对象存储(COS),用于存储和管理文件。产品介绍链接地址:https://cloud.tencent.com/product/cos
领取专属 10元无门槛券
手把手带您无忧上云