繁体   English   中英

从网页读取数据并用Excel编写

[英]reading data from web page and writing in excel

我正在尝试从网页中读取数据并写入excel。该网页包含两个表,这些表值被提取并将其写入excel。当提取并打印它时一切正常,但是应该将其写入在Excel的最后一行数据只写在所有单元格?

在此处输入图片说明 在此处输入图片说明

我以为我已经在全球范围内声明了所需的数据,因此它变得无处不在。但是由于问题仍然存在,所以没有用。

请在下面的代码中查找并让我现在出现任何错误。

Document doc=Jsoup.parse(singleFile, "UTF-8", "http://example.com/");
Element table=doc.select("table").get(0);
Element tabl=doc.select("table").get(1);
    Elements rows1=tabl.select("tr");


    Node Avg = null;
    for(int i=1;i< rows1.size();i++){
            Element row1=rows1.get(i);
            Elements col=row1.select("td");

            String Name =col.get(0).text();
            Node Max=col.get(2).childNode(0);
            Avg=col.get(3).childNode(0);

     System.out.println("Name:"+Name+ ": Avg:"+Avg);        

    }    



        FileInputStream fis = new FileInputStream(new File("C:/Users/mramasa7/Desktop/metrics/GUX_BSL Metrics Data_JUN_2019.xlsx"));
        Workbook workbook = new XSSFWorkbook(fis);
        Sheet sheet = workbook.getSheetAt(0);



        Cell cell=null;

        cell=sheet.getRow(34).getCell(k);
        cell.setCellValue(Avg.toString());

据我了解,您的问题是原始表上的最后一个值正在excel电子表格的每个单元格中打印。

在电子表格上编写的代码如下:

cell.setCellValue(Avg.toString());

您尚未将那段代码添加到为数据源上的每个条目创建单元的循环中。 创建行时,应填充行。 使用Apache POI示例:

public byte[] export(List<String> exportList) throws Exception{

    Workbook workbook = new XSSFWorkbook();
    Sheet sheet = workbook.createSheet("Export");
    for(int i=0; i< exportList.size(); i++) {
        Row row = sheet.createRow(i);
        row.createCell(0)
                .setCellValue(exportList.get(i));
    }
    ByteArrayOutputStream bos = new ByteArrayOutputStream();
    workbook.write(bos);
    bos.close();
    return bos.toByteArray();
}

要编辑现有的excel扩展名,您应使用循环遍历所有现有行并以所需值填充的循环。 例:

for(int i=0; i< sheet.getLastRowNum(); i++) {
        Row row = sheet.getRow(i);
        row.getCell(0)
                .setCellValue(exportList.get(i)); // Insert the number of the cell herer (column)
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM