Java中excel文件怎么使用apache poi进行生成?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
<强>首先,jar 强>
maven添加依赖
& lt; !——https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml——比; & lt; dependency> & lt; groupId> org.apache.poi & lt; artifactId> poi-ooxml & lt; version> 3.15 & lt;/version> & lt;/dependency>
开始以为是芋泥,然后就直接加poi的依赖,谁知道并没有所需要的类。查了查才发现是poi-ooxml
<强>要用到的类强>
- <李> XSSFWorkbook,代表一个excel文档李> <李> XSSFSheet,代表文档中的一个表李> <李> XSSFRow,代表板中的一行李> <李> XSSFCell,代表行中的每一项的值李>
<强>最最基本的使用强>
//创建excel文档 XSSFWorkbook工作簿=new XSSFWorkbook ();//创建表 XSSFSheet表=workbook.createSheet (“sheetName"); int rownum=0;//创建首行 XSSFRow firstrow=sheet.createRow (rownum + +); int cellnum=0;//把保存在标题中的各个列名,分别在一行中创建细胞 (字符串关键:标题){ XSSFCell细胞=firstrow.createCell (cellnum + +); cell.setCellValue(关键); }//下面可以继续创建行//把excel写到要写的outputStream中 workbook.write(输出);//最后关闭 workbook.close ();
<强>小例子一枚强>
利用反射,把bean类中各属性(用getXxx取出),写入到excel中
ExcelUtil。java
包me.paul.excelDemo; 进口java.io.IOException; 进口java.io.OutputStream; 进口java.lang.reflect.InvocationTargetException; 进口java.lang.reflect.Method; 进口java.util.LinkedHashMap; 进口并不知道; 进口java.util.Map; 进口java.util.regex.Matcher; 进口java.util.regex.Pattern; 进口org.apache.poi.xssf.usermodel.XSSFCell; 进口org.apache.poi.xssf.usermodel.XSSFRow; 进口org.apache.poi.xssf.usermodel.XSSFSheet; 进口org.apache.poi.xssf.usermodel.XSSFWorkbook; 公开课ExcelUtil { 公共& lt; T>空白getExcel (List列表,Class c OutputStream输出)抛出IOException IllegalAccessException IllegalArgumentException, InvocationTargetException { Method> Map<字符串;,methodMap=new LinkedHashMap<的在(); 方法[]方法=c.getDeclaredMethods (); for (int i=0; i 应用程序。java进行测试使用
包me.paul.excelDemo; 进口java.io.FileOutputStream; 进口java.io.IOException; 进口java.io.OutputStream; 进口java.lang.reflect.InvocationTargetException; 进口java.util.ArrayList; 进口并不知道; 公共类应用{ 公共静态void main (String [] args)抛出IllegalAccessException, IllegalArgumentException, InvocationTargetException IOException { List,列表=new ArrayList<的在(); 用户u=新用户(); u.setId (1); u.setName (“Paul"); u.setAge (18); list.add (u); u=新用户(); u.setId (2); u.setName (“Johnson"); u.setAge (20); list.add (u); u=新用户(); u.setId (3); u.setName (“David"); u.setAge (22); list.add (u); OutputStream输出=new FileOutputStream (“/home/保罗/user.xlsx"); 新ExcelUtil ()。getExcel(列表、User.class输出); output.close (); } } Java中excel文件怎么使用apache poi进行生成