Java 将Excel转为PDF

本文将介绍在Java程序中如何将Excel工作簿转为PDF文档的,包括:

  • 将整个工作簿转为PDF
  • 将指定工作表转为PDF

使用工具:Free Spire.XLS for Java (免费版)

Jar文件下载及导入:

方法1通过官网下载。下载后,解压文件,将lib文件夹下的Spire.Xls.jar文件导入Java程序;如下图:

方法2通过maven仓库导入,具体步骤可参考导入方法


Excel测试文档如下,包含两个工作表:

 

【示例1】将整个工作簿转为PDF

import com.spire.xls.*;

public class ExcelToPDF {
    public static void main(String[] args) {
        //加载Excel文档
        Workbook wb = new Workbook();
        wb.loadFromFile("test.xlsx");

        //调用方法保存为PDF格式
        wb.saveToFile("ToPDF.pdf",FileFormat.PDF);
    }
}

转换结果:

 

【示例2】将指定工作表转为PDF

import com.spire.xls.*;

public class ExcelToPDF {
    public static void main(String[] args) {
        //加载Excel文档
        Workbook wb = new Workbook();
        wb.loadFromFile("test.xlsx");

        //获取第2个工作表
        Worksheet sheet = wb.getWorksheets().get(1);

        //调用方法保存为PDF格式
        sheet.saveToPdf("ToPDF2.pdf");
    }
}

转换结果:

 

(本文完)

 

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要将Excel转为PDF,可以使用Java中的Apache POI和iText库。 首先,需要从Apache POI官网下载poi-bin和poi-ooxml两个库,并将它们放在项目的classpath中。 接下来,使用POI库读取Excel文件内容,然后使用iText库将内容写入到PDF文件中。具体代码如下: ```java import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.WorkbookFactory; import com.itextpdf.text.Document; import com.itextpdf.text.DocumentException; import com.itextpdf.text.PageSize; import com.itextpdf.text.pdf.PdfWriter; public class ExcelToPDFConverter { public static void main(String[] args) { String excelFilePath = "path/to/excel/file.xlsx"; String pdfFilePath = "path/to/pdf/file.pdf"; try { // Load Excel file Workbook workbook = WorkbookFactory.create(new File(excelFilePath)); // Create PDF document Document document = new Document(PageSize.A4); PdfWriter.getInstance(document, new FileOutputStream(pdfFilePath)); document.open(); // Loop through all sheets in Excel file for (int i = 0; i < workbook.getNumberOfSheets(); i++) { // Get current sheet org.apache.poi.ss.usermodel.Sheet sheet = workbook.getSheetAt(i); // Loop through all rows in current sheet for (int j = 0; j <= sheet.getLastRowNum(); j++) { // Get current row org.apache.poi.ss.usermodel.Row row = sheet.getRow(j); // Loop through all cells in current row for (int k = 0; k < row.getLastCellNum(); k++) { // Get current cell value String cellValue = row.getCell(k).getStringCellValue(); // Write cell value to PDF document document.add(new com.itextpdf.text.Paragraph(cellValue)); } } } // Close PDF document and Excel workbook document.close(); workbook.close(); System.out.println("Excel file converted to PDF successfully!"); } catch (IOException | DocumentException e) { e.printStackTrace(); } } } ``` 在执行该代码之前,需要确保已经安装了iText库,并将其添加到项目的classpath中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值