Apache-HSSF 对文档的修改读取及写入是怎么样的
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,Apache-HSSF 对文档的修改读取及写入是怎么样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、HSSF概述H
千家信息网最后更新 2026年11月03日Apache-HSSF 对文档的修改读取及写入是怎么样的
Apache-HSSF 对文档的修改读取及写入是怎么样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
一、HSSF概述
HSSF 是Horrible SpreadSheet Format的缩写,通过HSSF,你可以用纯Java代码来读取、写入、修改Excel文件。HSSF 为读取操作提供了两类API:usermodel和eventusermodel,即"用户模型"和"事件-用户模型"。
二、poi excel文档结构
HSSFWorkbook excel文档对象
HSSFSheet excel的sheet
HSSFName 名称
HSSFHeader sheet的头
HSSFRowexcel 的行
HSSFFooter sheet的尾
HSSFCell excel的单元格
HSSFCellStyle cell的样式
HSSFFont excel 字体
HSSFDataFormat 日期格式
三、导入excel
//excel文件位置String readfilePath="f:\\2019-04-23 22_53_44____.xls";//创建对excel文件的引用HSSFWorkbook workbook=new HSSFWorkbook(new FileInputStream(readfilePath))//获取sheet 第一个HSSFSheet sheet=workbook. getSheetAt(0);//获取其中一行cellHSSFRow row=sheet.getRow(1);//获取行结束位置int colCount=sheet.getRow(0).getLastCellNum();//遍历for(int j=1;j常用api导入
//获取sheet数目Int sheetCount=workbook.getNumberOfSheets();//取得有效行数Int rowCount=sheet.getLastRowNum();//获得一行有效单元格个数Int cellCount=row.getLastCellNum();//值类型读写cell.setCellType(HSSFCell.CELL_TYPE_STRING); //设置单元格为STRING类型 cell.getNumericCellValue();//读取为数值类型的单元格内容 /*读取注意cell是什么类型 string or 数值*/四、导出excel
//设置excel存放文件位置public static String writefilePath="f:\\test.xls";//创建excel文件HSSFWorkbook workbook=new HSSFWorkbook();//创建sheet 第一个HSSFSheet sheet=workbook. createSheet("创建的第一个sheet");//创建一行cellHSSFRow row=sheet.createRow(0);//模拟数据在一行显示String[] testTitle={"课程","学期","院系","开课院系","专业","班级"};//遍历生成一行cellfor(int j=0;j导出excel常用api
//1.设置列宽,行高 sheet.setColumnWidth((short)column,(short)width); row.setHeight((short)height); //2.添加区域,合并单元格 Region region = new Region(rowFrom,columnFrom,rowTo ,columnTo);//合并从第rowFrom行columnFrom列 sheet.addMergedRegion(region);// 到rowTo行columnTo的区域 //得到所有区域 sheet.getNumMergedRegions()//3.设置单元格边框格式 HSSFCellStyle style = wb.createCellStyle(); style.setBorderBottom(HSSFCellStyle.BORDER_DOTTED);//下边框 style.setBorderLeft(HSSFCellStyle.BORDER_DOTTED);//左边框 style.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框 style.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框 //单元格的合并 sheet.addMergedRegion(new CellRangeAddress(0, 4, 0, 2));本示例为合并4行2列 //4、设置字体和内容位置 HSSFFont f = wb.createFont(); f.setFontHeightInPoints((short) 11);//字号 f.setBold(true);//加粗 style.setFont(f); style.setAlignment(HorizontalAlignment.CENTER); HSSFDataFormat df = wb.createDataFormat(); style1.setDataFormat(df.getFormat("0.00%"));//设置单元格数据格式 cell.setCellFormula(string);//给单元格设公式 style.setRotation(short rotation);//单元格内容的旋转的角度 //5.对角线设置 通过画线的方式 HSSFPatriarch patriarch = sheet.createDrawingPatriarch(); HSSFClientAnchor a = new HSSFClientAnchor(0, 0, 1023, 255, (short)7, 0, (short)7, 2); HSSFShapeGroup group = patriarch.createGroup(a); group.setCoordinates(0, 0, 320, 276); float verticalPointsPerPixel = a.getAnchorHeightInPoints(sheet) / Math.abs(group.getY2() - group.getY1()); EscherGraphics g = new EscherGraphics(group, workbook, Color.black, verticalPointsPerPixel); EscherGraphics2d g2d = new EscherGraphics2d(g); g2d.drawLine(0, 0, 320, 276);//6、插入图片 HSSFPatriarch patriarch = sheet.createDrawingPatriarch();//插入圖片 ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream(); BufferedImage bufferImg = ImageIO.read(new File("f:\\downloadfile-14.jpg")); ImageIO.write(bufferImg,"jpg",byteArrayOut); //设置位置 HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 1023, 255, (short) 0, 0, (short) 11, 11); // 插入图片 patriarch.createPicture(anchor, workbook.addPicture(byteArrayOut.toByteArray(), HSSFWorkbook.PICTURE_TYPE_JPEG)); // 6.创建页眉和页脚 HSSFSheet sheet = workbook.createSheet("Test");// 创建工作表(Sheet) HSSFHeader header =sheet.getHeader();//得到页眉 header.setLeft("页眉左边"); header.setRight("页眉右边"); header.setCenter("页眉中间"); HSSFFooter footer =sheet.getFooter();//得到页脚 footer.setLeft("页脚左边"); footer.setRight("页脚右边"); footer.setCenter("页脚中间");看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
单元
文件
一行
位置
页眉
类型
文档
区域
右边
格式
边框
有效
内容
图片
字体
常用
数值
数据
模型
用户
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
南京欣网互联网络科技有限公司
互联网科技公司的优势
科技企业和互联网企业
港股互联网科技股
互联网科技英文
远信互联网科技
上海喔噻互联网科技
互联网科技ppt模板
互联网科技上市公司
睿民互联网科技
顺网科技2021年互联网排名
成都玖崟互联网科技有限公司乐商圈怎么样
青岛中康互联网医疗科技有限公司
河南猎农互联网科技有限公司
崇明区互联网教育科技诚信经营
燊美集互联网科技有限公司
互联网风格科技公司名称
互联网科技收购价值
科技互联网经济论坛
互联网科技企业文化
中国互联网科技股
互联网科技作文
迪茉互联网科技
百单互联网科技有限公司
互联网 视角下的科技创新
深圳期待互联网科技
坤平互联网科技
青海科技产业互联网发展
互联网新科技动漫ppt素材
万物互联网智能科技