.groovy实现导出excel报表
时间: 2023-07-26 15:03:26 浏览: 138
您可以使用Apache POI来实现导出Excel报表,这是一个Java库,但也可以在Groovy中使用。以下是一个示例代码片段:
```groovy
@Grapes([
@Grab(group='org.apache.poi', module='poi', version='3.17'),
@Grab(group='org.apache.poi', module='poi-ooxml', version='3.17')
])
import org.apache.poi.ss.usermodel.*
import org.apache.poi.xssf.usermodel.*
def workbook = new XSSFWorkbook()
def sheet = workbook.createSheet('Report')
// Create headers
def headerRow = sheet.createRow(0)
headerRow.createCell(0).setCellValue('Name')
headerRow.createCell(1).setCellValue('Age')
headerRow.createCell(2).setCellValue('Email')
// Add data
def data = [
['John', 25, 'john@example.com'],
['Jane', 30, 'jane@example.com'],
['Bob', 40, 'bob@example.com']
]
data.eachWithIndex { rowData, rowIndex ->
def dataRow = sheet.createRow(rowIndex + 1)
rowData.eachWithIndex { cellData, cellIndex ->
dataRow.createCell(cellIndex).setCellValue(cellData.toString())
}
}
// Auto-size columns
(0..2).each { sheet.autoSizeColumn(it) }
// Save to file
def output = new FileOutputStream(new File('report.xlsx'))
workbook.write(output)
output.close()
```
这个示例创建一个名为“Report”的工作簿,并填充了一些数据。它还自动调整列宽以适应数据,并将工作簿保存到名为“report.xlsx”的文件中。
请注意,您需要在脚本开始处使用`@Grapes`注释来添加POI依赖项。
阅读全文