有一个测试产品列表页面的脚本。在此脚本期间,网页中的数据(以包含名称和价格的两个列表的形式)应两次传输到 .xlsx 文件,每次传输到新工作表。
问题是 xlsx 文件在第二次调用后被覆盖。SmartsPopular 工作表消失,取而代之的是 Smarts 3-6 K。
public class Script
@Test
public void script3() throws IOException {
openSmartphones();
moreGoodsClick();
moreGoodsClick();
FileExcelCreating.main("SmartsPopular", goodsNamesListCreating, goodsPricesListCreating);
moreGoodsClick();
moreGoodsClick();
FileExcelCreating.main("Smarts 3-6 K", goodsNamesListCreating, goodsPricesListCreating);
---------------------------------------------------------------------------------------------------------
public class FileExcelCreating
public static void main(String sheetName, List<String> goodsNames, List<String> goodsPrices) throws IOException {
Workbook wb = new XSSFWorkbook();
Sheet sheet = wb.createSheet(sheetName);
Row r0 = sheet.createRow(0);
Cell c0 = r0.createCell(0);
c0.setCellValue("Name");
Cell c1 = r0.createCell(1);
c1.setCellValue("Price");
Row a;
List<Integer> goodsPricesInt = new ArrayList<>();
for(String s : goodsPrices) goodsPricesInt.add(Integer.valueOf(s));
for (int i = 0; i < goodsNames.size(); i++) {
a = sheet.createRow(i+1);
String name = goodsNames.get(i);
a.createCell(0).setCellValue(name);
}
for (int j = 0; j < goodsPricesInt.size(); j++) {
a = sheet.getRow(j+1);
Integer price = goodsPricesInt.get(j);
a.createCell(1).setCellValue(price);
}
sheet.setAutoFilter(CellRangeAddress.valueOf("A1:B" + (goodsPricesInt.size())));
FileOutputStream outputStream = new FileOutputStream ("/FilesTXT/Smartphones.xlsx");
wb.write(outputStream);
outputStream.close();
}
缥缈止盈
相关分类