用 Apache POI 将JTable表格数据导出生成Excel文件,jar包附件中!
import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import javax.swing.JFileChooser; import javax.swing.JTable; import javax.swing.filechooser.FileFilter; import javax.swing.table.TableModel; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFCellStyle; import org.apache.poi.hssf.usermodel.HSSFFont; import org.apache.poi.hssf.usermodel.HSSFRichTextString; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.hssf.util.HSSFColor; public class ExportExcel { JTable table; FileOutputStream fos; JFileChooser jfc = new JFileChooser(); public ExportExcel(JTable table) { this.table = table; jfc.addChoosableFileFilter(new FileFilter() { public boolean accept(File file) { return (file.getName().indexOf("xls") != -1); } public String getDescription() { return "Excel"; } }); jfc.showSaveDialog(null); File file = jfc.getSelectedFile(); try { this.fos = new FileOutputStream(file + ".xls"); } catch (FileNotFoundException ex) { ex.printStackTrace(); } } public void export() { HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet hs = wb.createSheet(); TableModel tm = table.getModel(); int row = tm.getRowCount(); int cloumn = tm.getColumnCount(); // System.out.println("row " + row + " column " + cloumn); HSSFCellStyle style = wb.createCellStyle(); style.setBorderBottom(HSSFCellStyle.BORDER_THIN); style.setBorderLeft(HSSFCellStyle.BORDER_THIN); style.setBorderRight(HSSFCellStyle.BORDER_THIN); style.setBorderTop(HSSFCellStyle.BORDER_THIN); style.setFillForegroundColor(HSSFColor.LIGHT_GREEN.index); style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); HSSFFont font = wb.createFont(); font.setFontHeightInPoints((short) 11); style.setFont(font); HSSFCellStyle style1 = wb.createCellStyle(); style1.setBorderBottom(HSSFCellStyle.BORDER_THIN); style1.setBorderLeft(HSSFCellStyle.BORDER_THIN); style1.setBorderRight(HSSFCellStyle.BORDER_THIN); style1.setBorderTop(HSSFCellStyle.BORDER_THIN); style1.setFillForegroundColor(HSSFColor.ORANGE.index); style1.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); HSSFFont font1 = wb.createFont(); font1.setFontHeightInPoints((short) 15); font1.setBoldweight((short) 700); style1.setFont(font); for (int i = 0; i < row + 1; i++) { HSSFRow hr = hs.createRow(i); for (int j = 0; j < cloumn; j++) { if (i == 0) { String value = tm.getColumnName(j); // System.out.println("value " + value); int len = value.length(); hs.setColumnWidth((short) j, (short) (len * 400)); HSSFRichTextString srts = new HSSFRichTextString(value); HSSFCell hc = hr.createCell((short) j); hc.setEncoding((short) 1); hc.setCellStyle(style1); hc.setCellValue(srts); } else { System.out.println("vlue " + tm.getValueAt(i - 1, j)); if (tm.getValueAt(i - 1, j) != null) { String value = tm.getValueAt(i - 1, j).toString(); HSSFRichTextString srts = new HSSFRichTextString(value); HSSFCell hc = hr.createCell((short) j); hc.setEncoding((short) 1); hc.setCellStyle(style); if (value.equals("") || value == null) { hc.setCellValue(new HSSFRichTextString("")); } else { hc.setCellValue(srts); } } } } } try { wb.write(fos); fos.close(); } catch (IOException ex) { ex.printStackTrace(); } } }
使用:
public JTable table;........................
传个JTable对象即可。
ExportExcel exportExcel = new ExportExcel(table);
exportExcel.export();
相关推荐
Apache POI导入和导出Excel文件
可以运行的POI导出Excel文件实例,里面有两种方法,一个是Servlet,一个是main
SpringBootMybatis+poi+Thymeleaf实现excel文件数据导入到数据库以及从数据库将数据导出成excel
apache POI,文件读写 ,excel 对于使用apache poi 解析微软excel的一些文件
使用Apache POI的3.16版实现,Excel模板填充数据导出Excel报表
NULL 博文链接:https://keep-going.iteye.com/blog/1907664
Apache Poi Excel导出 博文链接:https://zhiminsun.iteye.com/blog/1883347
使用java Apache poi 根据word模板生成word报表 仅支持docx格式的word文件,大概是word2010及以后版本,doc格式不支持。 使用说明:https://blog.csdn.net/u012775558/article/details/79678701
Java使用POI将Mongo数据库数据导出到Excel文件;包含java 测试文件和各种jar包 ,bson-3.4.2.jar ,mongodb-driver-3.4.2.jar,mongodb-driver-core-3.4.2.jar,poi-3.9-20121203.jar
Apache poi 操作 excel 文件压缩包,亲测可用
文件包含了 1.POI导入导出的工具类; 2.图片URL导出成图片文件; 3.导出excel和图片压缩包格式文件。 如果下载后有任何问题,可以联系我哦!
使用POI筛选字段导出Excel,以及条件查询和指定数据导出
JAVA开发中需要将表格中数据导出成EXCEL文件,其中的某一项又要设置为HTML格式,并支持点击链接,使用POI的开源方式导出时可以参考到此文件的内容!
对大数据量的导出excel,用多线程,用倒数计数器对文件进行生成,使用poi,可以支持大数据量的生成,项目中使用的poi是3.1的,上传的是4.1的。
POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI...
使用apach poi 导出Excel,可直接在项目中使用使用apach poi 导出Excel,可直接在项目中使用使用apach poi 导出Excel,可直接在项目中使用
POI使用excel模板循环输出行到文件并导出的一个小例子
1.java使用poi生成excel插入图表曲线 2.demo包含完成jar包 3.主要用途是过滤数据自动生成曲线图
java代码调用poi架包, 把数据生成excel文件, 导出到文件
该实例集成maven开发环境,里面讲解了POI导入和导出Excel表格的基本用法