使用 java 在 excel 的两列中写入多条记录
Write multiple records in two column in excel using java
我在 excel 中有两列,即设置和请求,需要使用 java
在 excel 中写入多行
public void WriteExcelValues() throws IOException {
String Ustr= setup.getText();
String urequest = request.getText();
File file = new File(System.getProperty("user.dir")
+ "/src/main/uat/testdata/FreeTestData.xlsx");
FileInputStream fis = new FileInputStream(file);
Workbook workbook = new XSSFWorkbook(fis);
Sheet sheet = workbook.getSheetAt(0);
int lastRow = sheet.getLastRowNum();
int n = 1;
for (int i = 1; i <= n; i++) {
Row row = sheet.getRow(i);
Cell cell = row.createCell(8);
Cell cell1 = row.createCell(9);
cell.setCellValue(Ustr);
cell1.setCellValue(urequest);
//cell.setCellValue("AcknowledgementId");
}
FileOutputStream fos = new FileOutputStream(file);
workbook.write(fos);
fos.close();
}
例如
以上代码不完整,也不满足条件。
我认为你的 for 循环不正确
for(int i=1; i<=n; i++){
应该是
for(int i=1; i<=lastRow; i++){
File file = new File(System.getProperty("user.dir")
+ "/src/main/uat/testdata/FreeTestData.xlsx");
if(!file.exists())
{
file.createNewFile();
}
else
{
file.delete();
file.createNewFile();
}
Workbook workbook = new XSSFWorkbook();
Sheet sheet = workbook.createSheet();
Row headerRow = sheet.createRow(0);
headerRow.createCell(0).setCellValue("Setupid");
headerRow.createCell(1).setCellValue("Request");
int cellCount = 10;
for (int i = 1; i <= cellCount; i++)
{
Row row = sheet.createRow(i);
row.createCell(0).setCellValue("cell " + i);
row.createCell(1).setCellValue("cell " + i);
}
FileOutputStream fos = new FileOutputStream(file);
workbook.write(fos);
fos.close();
workbook.close();
我在 excel 中有两列,即设置和请求,需要使用 java
在 excel 中写入多行public void WriteExcelValues() throws IOException {
String Ustr= setup.getText();
String urequest = request.getText();
File file = new File(System.getProperty("user.dir")
+ "/src/main/uat/testdata/FreeTestData.xlsx");
FileInputStream fis = new FileInputStream(file);
Workbook workbook = new XSSFWorkbook(fis);
Sheet sheet = workbook.getSheetAt(0);
int lastRow = sheet.getLastRowNum();
int n = 1;
for (int i = 1; i <= n; i++) {
Row row = sheet.getRow(i);
Cell cell = row.createCell(8);
Cell cell1 = row.createCell(9);
cell.setCellValue(Ustr);
cell1.setCellValue(urequest);
//cell.setCellValue("AcknowledgementId");
}
FileOutputStream fos = new FileOutputStream(file);
workbook.write(fos);
fos.close();
}
例如
以上代码不完整,也不满足条件。
我认为你的 for 循环不正确
for(int i=1; i<=n; i++){
应该是
for(int i=1; i<=lastRow; i++){
File file = new File(System.getProperty("user.dir")
+ "/src/main/uat/testdata/FreeTestData.xlsx");
if(!file.exists())
{
file.createNewFile();
}
else
{
file.delete();
file.createNewFile();
}
Workbook workbook = new XSSFWorkbook();
Sheet sheet = workbook.createSheet();
Row headerRow = sheet.createRow(0);
headerRow.createCell(0).setCellValue("Setupid");
headerRow.createCell(1).setCellValue("Request");
int cellCount = 10;
for (int i = 1; i <= cellCount; i++)
{
Row row = sheet.createRow(i);
row.createCell(0).setCellValue("cell " + i);
row.createCell(1).setCellValue("cell " + i);
}
FileOutputStream fos = new FileOutputStream(file);
workbook.write(fos);
fos.close();
workbook.close();