- package cc.dynasoft.struts.action;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.util.Iterator;
- import java.util.List;
- import java.util.Vector;
- 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.HSSFFooter;
- import org.apache.poi.hssf.usermodel.HSSFHeader;
- import org.apache.poi.hssf.usermodel.HSSFPrintSetup;
- 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;
- import org.apache.poi.hssf.util.Region;
- import cc.dynasoft.bean.Department;
- ///import org.apache.poi.hssf.record.HeaderRecorder;
- public class OutputExcel {
- public static boolean outputExcel(ExcelArgs args, List title, List list) {
- try {
- int cellNum = args.getCellNum(); // workbook
- int rowNum = args.getRowNum();
- /**
- * 建立表格设置。
- */
- HSSFWorkbook wb = new HSSFWorkbook(); // create the new Workbook
- HSSFSheet sheet = wb.createSheet(args.getSheetName()); // create
- /**
- * 打印设置
- */
- HSSFPrintSetup hps = sheet.getPrintSetup();
- hps.setPaperSize((short) 9); // 设置A4纸
- // hps.setLandscape(true); // 将页面设置为横向打印模式
- sheet.setHorizontallyCenter(true); // 设置打印页面为水平居中
- // sheet.setVerticallyCenter(true); // 设置打印页面为垂直居中
- wb.setPrintArea(0, "$A$2:$e$" + rowNum + 2);// 打印区域设置.
- /**
- * 设置表的Footer
- */
- HSSFFooter footer = sheet.getFooter();
- // 设置footer的位置和显示的内容
- footer.setCenter("Time:" + HSSFFooter.date());
- footer.setRight("Page " + HSSFFooter.page() + " of "
- + HSSFFooter.numPages());
- /**
- * 设置表的Header
- */
- // 设置header的位置,共有三种位置和相应的显示设置
- HSSFHeader header = sheet.getHeader();
- // header.setRight("Center Header");
- // header.setLeft("Left Header");
- header.setCenter(HSSFHeader.font("Stencil-Normal", "Italic")
- + HSSFHeader.fontSize((short) 30) + args.getHeaderTitle());
- // header.endDoubleUnderline();
- header.startUnderline();
- /**
- * 设置列的宽度
- */
- sheet.setColumnWidth((short) 2,
- (short) ((30 * 8) / ((double) 1 / 10)));
- sheet.setColumnWidth((short) 3,
- (short) ((40 * 8) / ((double) 1 / 10)));
- sheet.setColumnWidth((short) 4,
- (short) ((50 * 8) / ((double) 1 / 20)));
- /**
- * 创建第一行,也就是显示的标题, 可以高置的高度,单元格的格式,颜色,字体等设置. 同时可以合并单元格.
- */
- HSSFRow row0 = sheet.createRow(0); // 创建0行
- row0.setHeight((short) 0x300); // 设直行的高度.
- HSSFFont font2 = wb.createFont(); // 创建字体格式
- font2.setColor(HSSFFont.SS_NONE); // 设置单元格字体的颜色.
- font2.setFontHeight((short) 700); // 设置字体大小
- font2.setFontName("Courier New"); // 设置单元格字体
- HSSFCell cell0 = row0.createCell((short) 0); // 创建0行0列.
- HSSFCellStyle style3 = wb.createCellStyle(); // 创建单元格风格.
- style3.setAlignment(HSSFCellStyle.VERTICAL_CENTER); // 垂直居中
- style3.setAlignment(HSSFCellStyle.ALIGN_CENTER); // /水平居中
- style3.setFont(font2); // 将字体格式加入到单元格风格当中
- // cell0.setCellType()
- cell0.setCellStyle(style3); // 设置单元格的风格.
- cell0.setCellValue(args.getHeaderTitle()); // 设置单元的内容.
- sheet.addMergedRegion(new Region(0, (short) 0, 0,
- (short) (cellNum - 1)));// 指定合并区域,前二个参数为开始处X,Y坐标.后二个为结束的坐标.
- /**
- * 设置其它数据 设置风格
- */
- HSSFCellStyle style = wb.createCellStyle();
- style.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 设置单无格的边框为粗体
- style.setBottomBorderColor(HSSFColor.BLACK.index); // 设置单元格的边框颜色.
- style.setBorderLeft(HSSFCellStyle.BORDER_THIN);
- style.setLeftBorderColor(HSSFColor.BLACK.index);
- style.setBorderRight(HSSFCellStyle.BORDER_THIN);
- style.setRightBorderColor(HSSFColor.BLACK.index);
- style.setBorderTop(HSSFCellStyle.BORDER_THIN);
- style.setTopBorderColor(HSSFColor.BLACK.index);
- // style.setWrapText(true);//文本区域随内容多少自动调整
- // style.setFillForegroundColor(HSSFColor.LIME.index);
- // style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
- /**
- * 设置风格1
- */
- HSSFCellStyle style1 = wb.createCellStyle();
- style1.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 设置单无格的边框为粗体
- style1.setBottomBorderColor(HSSFColor.BLACK.index); // 设置单元格的边框颜色.
- style1.setBorderLeft(HSSFCellStyle.BORDER_THIN);
- style1.setLeftBorderColor(HSSFColor.BLACK.index);
- style1.setBorderRight(HSSFCellStyle.BORDER_THIN);
- style1.setRightBorderColor(HSSFColor.BLACK.index);
- style1.setBorderTop(HSSFCellStyle.BORDER_MEDIUM);
- style1.setTopBorderColor(HSSFColor.BLACK.index);
- style1.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);// 最好的设置Pattern
- // 单元格背景的显示模式.
- style1.setFillForegroundColor(new HSSFColor.RED().getIndex()); // 设置单元格背景色;
- style1.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 水平对齐方式
- // style1.setWrapText(true);//文本区域随内容多少自动调整
- // style.setFillPattern(HSSFCellStyle.//);
- // 设置字体Color,首先创建Font对象,后对font设置,然后做为参数传给style
- HSSFFont font = wb.createFont();
- font.setColor(HSSFFont.SS_NONE);
- // font.setFontHeightInPoints((short)24);
- font.setFontName("Courier New");
- // font.setItalic(true);
- // font.setStrikeout(true);//给字体加上删除线
- font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
- style1.setFont(font);
- /**
- *
- * 设置第零行表格说明行
- *
- *
- *
- */
- HSSFRow row1 = sheet.createRow((short) 1);
- for (int j = 0; j < cellNum; j++) {
- HSSFCell cell = row1.createCell((short) j);
- cell.setCellValue((String) title.get(j));
- cell.setCellStyle(style1);
- }
- // style.setFillPattern(HSSFCellStyle.NO_FILL);
- /**
- * 设置表的内容主体
- */
- Iterator iter = list.iterator();
- for (int i = 2; iter.hasNext(); i++) {
- Department dep = (Department) iter.next();
- HSSFRow row = sheet.createRow((short) i);
- HSSFCell cell5 = row.createCell((short) 0);
- HSSFCell cell1 = row.createCell((short) 1);
- HSSFCell cell2 = row.createCell((short) 2);
- HSSFCell cell3 = row.createCell((short) 3);
- HSSFCell cell4 = row.createCell((short) 4);
- cell5.setCellValue(dep.getId());
- cell5.setCellStyle(style);
- cell1.setCellValue(dep.getParentId());
- cell1.setCellStyle(style);
- cell2.setCellValue(dep.getName());
- cell2.setCellStyle(style);
- cell3.setCellValue(dep.getDescription());
- cell3.setCellStyle(style);
- cell4.setCellValue(dep.getImagePath());
- cell4.setCellStyle(style);
- }
- // Write the output to a file}
- // FileOutputStream fileOut = new
- // FileOutputStream(args.getPath()+args.getFileName());
- /**
- * 对文件进行输出操作。
- */
- FileOutputStream fileOut = new FileOutputStream(args
- .getPathAndName());
- wb.write(fileOut);
- // fileOut.close();
- } catch (IOException ex) {
- ex.printStackTrace();
- } catch (Exception ex) {
- ex.printStackTrace();
- }
- return true;
- }
- }
相关推荐
HFSS仿真中如何提取最大E/H场强与频率关系曲线
本文详细讲解了在HFSS仿真中提取最大E/H场强与频率关系曲线的完整流程。通过使用场计算器(Field Calculator)和创建场报告,工程师可以准确获得器件在整个频带内的电场或磁场强度峰值,并进一步推导出关键的功率容量曲线,为高功率射频器件(如滤波器、耦合器)的设计提供至关重要的安全评估依据。
POI设置excel的页面属性
PrintSetup printSetup = sheet.getPrintSetup(); printSetup.setPaperSize(HSSFPrintSetup.A4_PAPERSIZE); printSetup.setLandscape(true); // 打印方向,true:横向,false:纵向(默认) printSetup.setVResolution((short...
基于ST32 DAC7311数模转换器驱动代码及电路设计完整版
基于ST32的DAC7311模数转换器的电路设计及驱动代码完整版
POI - Excel 打印配置
转载链接: https://blog.youkuaiyun.com/qq_34357018/article/details/108620845 无模板时 PrintSetup ps = sheet.getPrintSetup(); // 印刷方向、true:横向、false:縦向 ps.setLandscape(true); //设置用紙 ps.setPaperSize(PrintSetup.A3_PAPERSIZE); //设置比率 ps.setScale(60); //设置页边距 sheet.setMargin
拌合楼软件开发(24)接收微信消息生成车辆计划
【摘要】针对拌合站客户群体文化程度不高、习惯微信群沟通的业务场景,提出通过企业微信机器人实现微信对话下单的解决方案。核心是利用WorkTool工具的消息回调机制:1)配置接收消息的API接口;2)解析JSON格式的对话数据,筛选@机器人的有效消息;3)采用*号分隔符提取订单信息并进行校验;4)建立微信昵称与客户系统的映射关系。方案解决了传统系统登录门槛高的问题,但需注意群名唯一性、多系统对接及客户身份识别等关键问题。全文重点阐述技术实现逻辑而非具体代码。
北京绿盟科技安服实习生面经
记一次绿盟校招技术面经历,人生第一次面试,该说不说还是很紧张的,以下是技术面的一些问题,欢迎各位大佬在评论区补充纠正对于面试的问题,都应该自己下来深度去拓展学习,面试官问的问题刚好可以检测我们自己对某个模块的学习情况,借此更好的进行总结和学习。
HSSFSheet设置Excel打印区 横向打印
HSSFSheet sheet = wb.createSheet("XXXXXXXX"); //设置页眉 HSSFHeader header = sheet.getHeader(); //font字体加粗 fontSize字体大小 header.setCenter(HSSFHeader.font("Stencil-Normal", "bold") + HSSFHeader.fontSize((short) 22) + "XXXXXXXX".
从开票数据到 ML81N 一键过账:用 ABAP BAPI 批量创建 Service Entry Sheet 的落地方案
摘要:SAP ESM场景中,服务履约确认通常通过ML81N事务码创建服务条目表(SES)完成。本文介绍如何基于开票数据(VBRK/VBRP)自动生成SES:首先通过BAPI_PO_GETDETAIL获取采购订单服务行结构,然后使用BAPI_ENTRYSHEET_CREATE创建SES并覆盖开票数量与金额,最后调用BAPI_ENTRYSHEET_RELEASE自动释放。解决方案包含ALV交互界面、批量处理逻辑和结果跳转功能,实现从人工录入到自动化处理的转变。(149字)
JAVA - 使用Apache POI生成word(二) 设置纸张大小、调整纸张方向
JAVA - 使用Apache POI生成word(二) 设置纸张大小、调整纸张方向 前言 之前开发时,需要将纸张方向由纵向改为横向,查询资料得出只需要设置一下纸张的长度与宽度便可实现相同的效果。 1. pom引入依赖 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId>
为分析表明卡诺电池技术(或热泵式储电技术)-是目前最佳的储能技术!!!-2021年
卡诺电池(Carnot Battery)是一种基于热力学循环的储能技术,其核心原理是通过热力循环将电能转化为热能存储,并在需要时将热能重新转换为电能输出。这种技术得名于热力学中的卡诺循环原理,由法国工程师卡诺于1824年提出。
一文掌握DrissionPage的详细使用
是一个基于 Python 的网页自动化工具,主要用于网页数据的抓取、自动化操作和测试。它结合了 Selenium 和 Requests 的优点,提供了更简洁、高效的 API,适用于各种网页自动化任务。DrissionPage 是一个功能强大且易于使用的网页自动化工具,适用于各种网页自动化任务。希望本文的 DrissionPage 的基本使用方法和一些高级功能能够帮助到你。
POI输出Excel
官方例子已经很强大,直接看 http://poi.apache.org/spreadsheet/examples.html 如:http://svn.apache.org/repos/asf/poi/trunk/src/examples/src/org/apache/poi/ss/examples/TimesheetDemo.java 输出如下的excel
Linux | Ubuntu18.04安装WIFI6 AX201驱动完整教程
本节介绍了如何在Ubuntu18下安装AX201驱动的教程。
Java Poi 在Excel中输出特殊符号
最近的工作围绕报表导出,并没有集成相应的报表插件,只是使用了Poi。其中有一个需求,Excel中导出特殊符号,如√、×等。在网上找寻了许久,没有相关资料,故记录分享一下。 思考良久,走了不少弯路,最后受 System.out.println() 启发,实现方式真的超级简单。每一个特殊符号,都对应一个Unicode编码,我们只需要将特定的符号,转变成Unicode编码,进行输出即可。 相应的代码输出: cell.setCellValue("\u221A"); 另附自己编写的Excel工具类,支持单表、主
温度PID控制PLC程序
温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值
汉书HE8,好用的汇编代码编写工具
汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大
java poi excel 图表_Java用POI实现根据Excel表格模板生成新的Excel并实现数据输出
一、模板excel结果excel二、项目所需jar包poi-3.11-20141221.jarpoi-examples-3.11-20141221.jarpoi-excelant-3.11-20141221.jarpoi-ooxml-3.11-20141221.jarpoi-ooxml-schemas-3.11-20141221.jarpoi-scratchpad-3.11-20141221.ja...
假人有限元模型
假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用
poi输出excel报表 单元格合并
1.poi输出excel报表其实很简单,使用apache的poi jar就可以很容易实现,在网上可以找到例子。 2.写博文的目的是想记录下 数据复杂报表头的方法,比如想输出如下格式的表头: 这时就要进行单元格合并了。这里参考另外一遍博文: http://hi.baidu.com/hnsmczw/item/f9d272d0112207c61b72b450
霍尼韦尔SoftMaster使用说明
霍尼韦尔SoftMaster使用说明
java 使用POI输出Excel时打印页面的设置
HSSFPrintSetup ps = sheet.getPrintSetup(); ps.setLandscape(true); // 打印方向,true:横向,false:纵向 ps.setPaperSize(HSSFPrintSetup.A4_PAPERSIZE); //纸张 sheet.setMargin(HSSFSheet.BottomMargin,( double ) 0.5 );/
使用POI输出EXCEL表格 一个程序
package cc.dynasoft.struts.action; import java.io.FileOutputStream; import java.io.IOException; import java.util.Iterator; import java.util.List; import java.util.Vector; import org.apache.poi.hssf.
java使用poi把mysql数据转成excel输出
读取mysql数据封装成LinkedHashMap类型的List /** * @Description: 封装jdbc查询对象 * @Param: [jdbcTemplate, sql] jdbctemplate>spring模板 sql>查询语句 * @return: java.util.List<java.util.HashMap<ja...
SpringBoot集成POI将库数据输出到Excel
1.业务背景 将数据库表的数据,导入到Excel表中,提供下载链接 2.具体实施 2.1引入POM文件 <!-- 解析Excal --> <!-- <version>3.15</version> --> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <ver
poi导出excel 损坏_poi导出excel没有抛出异常 但是没有输出文件
代码:util类if(workbook !=null){OutputStream out=null;try{String fileName = "Excel-" + String.valueOf(System.currentTimeMillis()).substring(4, 13) + ".xls";String headStr = "attachment; filename=\"" + fil...
使用POI输出EXCEL表格
package cc.dynasoft.struts.action;import java.io.FileOutputStream;import java.io.IOException;import java.util.Iterator;import java.util.List;import java.util.Vector;import org.apache.poi.hssf.u
java读取excel插件_利用poi插件,把Excel内容读入Java,把Java中的内容输出到Exce
1 1、首先在Java头引入Poi插件。23 packagepoiExcel;45 //输入输出到文件必备6 import java.io.*;78 import org.apache.poi.hssf.usermodel.*;9 import org.apache.poi.hssf.util.*;10 import org.apache.poi.poifs.filesystem.*;11 2、先...
简单使用poi并输出Excel表格
maven导入依赖包 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.17</version> </dependency> &
java excel 显示_[Java教程]poi 输出Excel显示内容
[Java教程]poi 输出Excel显示内容0 2015-12-04 13:00:16在业务系统中多少回接触到Excel解析。在java开发平台下选择Apache POI是一个非常明智的选择,POI提供非常完善API来读取或写入Microsoft Office Excel。目前对导入的数据都会进行二次加工,我们开发模式就是先把Excel中的内容直接原样导入数据库对应的一张数据表中...
1099



被折叠的 条评论
为什么被折叠?



