快速生成xls模板

本文介绍了一种简单快捷的方法来创建Excel(XLS)模板。通过提供标题、列宽、文件路径及内容等参数,可以轻松生成所需的XLS文件。文中包含了一个示例代码片段和依赖的jar包说明。

有些时候在客户现场需要定制化一些EXCLE的开发工作,而这些定制化的模板很可能都差不过,所以就整理出来一份自己用着感觉还错的快速生成xls模板的开发方式。测试代码如下:

public static void main(String[] args) {
	String[] title = {"column1","column2","column3","column4"};
	Integer[] length = {10,10,10,10};
	String filePath = "D:/test/test.xls";
	List  objs = new ArrayList();
	for(int i = 0 ; i<title.length ;i++){
		objs.add(new Object[]{
				title[0]+i,title[1]+i,title[2]+i,title[3]+i
		});
	}
	XlsUtils.writeXls(title, length, filePath, objs);
	System.out.println("...............");
}

 生成xls模板预览如下:



 
依赖jar: xls1.0.jar

com.xlsTools.XlsUtils.writeXls

(String[] title, Integer[] length, String filePath, List<Object[]> objs)

方法使用起来很简单,只需要封装对应的头标题(title),每一列宽度(length),文件路径(filePath),每列显示内容(objs)即可。

在Java中,你可以使用一些库如Apache POI(HSSF或XSSF)结合JAXB(Java Architecture for XML Binding)或者直接使用XML解析技术,配合模板XML文件,将数据转换为Excel(.xls)文件。以下是一个简单的步骤概述: 1. **引入依赖**: 首先需要在项目中添加Apache POI的依赖,它包含了处理Excel文件所需的功能。 ```xml <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>最新版本号</version> </dependency> ``` 2. **XML模板**: 创建一个XML模板文件,例如`template.xml`,其中包含表格结构、单元格的数据绑定标签等。 ```xml <workbook> <sheet name="Sheet1"> <row> <cell><data key="header1"/></cell> <cell><data key="header2"/></cell> </row> <!-- 根据数据填充 --> <row> <cell><data key="data1"/></cell> <cell><data key="data2"/></cell> </row> </sheet> </workbook> ``` 3. **读取并生成XLS**: 使用Java解析XML,然后创建相应的HSSFWorkbook或XSSFWorkbook对象,并填充数据到模板中。 ```java import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBException; import org.w3c.dom.Element; public void generateExcelFromXml(String xmlTemplatePath, String outputFilePath) { try (FileInputStream fis = new FileInputStream(xmlTemplatePath); FileOutputStream fos = new FileOutputStream(outputFilePath)) { JAXBContext jaxbContext = JAXBContext.newInstance(YourDocument.class); // 替换为实际模板文档类名 YourDocument document = (YourDocument) jaxbContext.createUnmarshaller().unmarshal(fis); // 使用POI处理数据 YourDocumentHandler handler = new YourDocumentHandler(); handler.fillData(document, fos); // 自定义方法,根据模板填充数据 } catch (JAXBException | FileNotFoundException e) { e.printStackTrace(); } } ``` 4. **自定义处理类**: 创建`YourDocumentHandler` 类,用于读取XML中的`<data>`标签,填充对应的数据到Excel中。 ```java class YourDocumentHandler { public void fillData(YourDocument doc, OutputStream out) { // ...遍历doc,获取数据,并使用POI API写入Excel } } ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值