用poi来创建一个Excel文件, 在用java编写代码创建一个单元格时控制这个单元格是否让它锁定也就是说:当用poi写出一个Excel文件时,其工作表中的单元格是否锁定是通过用java代码创建单元格时设置的。
import   org.apache.poi.hssf.usermodel.HSSFCell;   
import   org.apache.poi.hssf.usermodel.HSSFCellStyle;   
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.poifs.filesystem.POIFSFileSystem;              
                  /**  
    *   @param   inputFile   输入模板文件路径  
    *   @param   outputFile   输入文件存放于服务器路径  
    *   @param   dataList   待导出数据  
    *   @throws   Exception  
    *   @roseuid:  
    */  
  public   void   exportExcelFile(String   inputFile,   String   outputFile,   List   dataList)   throws   Exception  
  {  
  //用模板文件构造poi  
  POIFSFileSystem   fs   =   new   POIFSFileSystem(new   FileInputStream(inputFile));  
  //创建模板工作表  
  HSSFWorkbook   templatewb   =   new   HSSFWorkbook(fs);  
  //直接取模板第一个sheet对象  
  HSSFSheet   templateSheet   =   templatewb.getSheetAt(1);  
  //得到模板的第一个sheet的第一行对象   为了得到模板样式  
  HSSFRow   templateRow   =   templateSheet.getRow(0);  
   
  //HSSFSheet   timplateSheet   =   templatewb.getSheetAt(1);  
  //取得Excel文件的总列数  
  int   columns   =   templateSheet.getRow((short)   0).getPhysicalNumberOfCells();  
  Debug.println("columns   is   :   "   +   columns);  
  //创建样式数组  
  HSSFCellStyle   styleArray[]   =   new   HSSFCellStyle[columns];  
   
   
  //一次性创建所有列的样式放在数组里  
  for   (int   s   =   0;   s   <   columns;   s++)  
  {  
  //得到数组实例  
  styleArray[s]   =   templatewb.createCellStyle();  
  }  
  //循环对每一个单元格进行赋值    
  //定位行  
  for   (int   rowId   =   1;   rowId   <   dataList.size();   rowId++)  
  {  
  //依次取第rowId行数据   每一个数据是valueList  
  List   valueList   =   (List)   dataList.get(rowId   -   1);  
  //定位列  
  for   (int   columnId   =   0;   columnId   <   columns;   columnId++)  
  {  
  //依次取出对应与colunmId列的值  
  //每一个单元格的值  
                  String   dataValue   =   (String)   valueList.get(columnId);  
  //取出colunmId列的的style  
  //模板每一列的样式  
                  HSSFCellStyle   style   =   styleArray[columnId];  
  //取模板第colunmId列的单元格对象  
  //模板单元格对象  
                  HSSFCell   templateCell   =   templateRow.getCell((short)   columnId);  
  //创建一个新的rowId行   行对象  
  //新建的行对象    
                  HSSFRow   hssfRow   =   templateSheet.createRow(rowId);  
  //创建新的rowId行   columnId列   单元格对象  
  //新建的单元格对象  
                  HSSFCell   cell   =   hssfRow.createCell((short)   columnId);  
  //如果对应的模板单元格   样式为非锁定  
  if   (templateCell.getCellStyle().getLocked()   ==   false)  
  {  
  //设置此列style为非锁定  
  style.setLocked(false);  
  //设置到新的单元格上  
  cell.setCellStyle(style);  
  }  
  //否则样式为锁定  
  else  
  {  
  //设置此列style为锁定  
  style.setLocked(true);  
  //设置到新单元格上  
  cell.setCellStyle(style);  
  }  
  //设置编码  
  cell.setEncoding(HSSFCell.ENCODING_UTF_16);  
  //Debug.println("dataValue   :   "   +   dataValue);  
  //设置值   统一为String  
  cell.setCellValue(dataValue);  
  }  
  }  
  //设置输入流  
  FileOutputStream   fOut   =   new   FileOutputStream(outputFile);  
  //将模板的内容写到输出文件上  
  templatewb.write(fOut);  
  fOut.flush();  
   
  //操作结束,关闭文件  
  fOut.close();  
   
  }

Java设置excel单元格锁定状态相关推荐

  1. 【poi第五节】poi设置Excel单元格边框 和 背景色,java设置Excel 单元格边框 和 背景色

    poi设置Excel单元格边框 和 背景色,java设置Excel 单元格边框 和 背景色 import org.apache.poi.hssf.usermodel.HSSFWorkbook; imp ...

  2. java设置Excel单元格格式 POI

    POI中可能会用到一些需要设置EXCEL单元格格式的操作小结:先获取工作薄对象:HSSFWorkbook wb = new HSSFWorkbook();HSSFSheet sheet = wb.cr ...

  3. java设置excel单元格文本右对齐,POI操作Excel--设置单元格对齐方式--day03

    设置单元格的对齐方式 1.注意: 1.如果每个单元格(cell)的样式都不一样,必须每个单元格都创建一个CellStyle,否则不生效: 2.day03关闭流的方式, 采用了JDK 7的try(),, ...

  4. JAVA设置EXCEL单元格为文本格式

    //新增的四句话,设置CELL格式为文本格式 HSSFCellStyle cellStyle2 = demoWorkBook.createCellStyle(); HSSFDataFormat for ...

  5. JAVA导出excel表格标题加粗,【excle特定文字加粗】java如何设置excel单元格中部分文字加粗 例如:标题(加粗): 内容(不加粗)...

    java如何设置excel单元格中部分文字加粗 例如:标题(加粗): 内容(不加粗) HSSFCellStyle style = (HSSFCellStyle) wb.createCellStyle( ...

  6. poi设置excel单元格背景色

    poi任意设置excel单元格背景色 Cell cell = sheet.createRow(0).createCell(0); XSSFCellStyle cellStyle = (XSSFCell ...

  7. 设置Excel单元格背景色(setFillForegroundColor)

    POI 设置Excel单元格背景色(setFillForegroundColor) 背景介绍: 使用Java开发信息系统项目,项目中往往会涉及到报表管理部分,而Excel表格首当其冲称为最合适的选择, ...

  8. 总结Python设置Excel单元格样式的一切,比官方文档还详细。

    Python对Excel表格处理非常方便,本文专门对Excel单元格样式设置进行总结,日常用到的设置基本都可以用openpyxl库完成. 创建一个表格 openpyxl是第三方库,如果你还没有安装,输 ...

  9. 总结Python设置Excel单元格样式的一切,比官方文档还详细

    总结Python设置Excel单元格样式的一切,比官方文档还详细 Python对Excel表格处理非常方便,本文专门对Excel单元格样式设置进行总结,日常用到的设置基本都可以用openpyxl库完成 ...

  10. python 设置excel单元格式,Python xlwt设置excel单元格字体及格式

    Python xlwt设置excel单元格字体及格式 来源:中文源码网    浏览: 次    日期:2018年9月2日 [下载文档:  Python xlwt设置excel单元格字体及格式.txt  ...

最新文章

  1. npm package.json那些事
  2. [云炬创业学笔记]第二章决定成为创业者测试10
  3. 计算机网络安全顾问啊,【网络安全咨询顾问工作内容|工作职责|网络安全咨询顾问做什么】-看准网...
  4. mysql数据库的新特性_【数据库】MySQL新特性归档介绍
  5. php 数组 json字段去不全,json_encode – PHP给出了不完整的json字符串
  6. java redis 重连机制_redis在java中的客户端连接
  7. maven打包不用eclipse插件
  8. 无法打开包括文件:“afxcontrolbars.h”
  9. python撩人的代码,老师教已毕业的学生,用Python代码每天不定时撩女友,附源码文件...
  10. 能力提升综合题单Part 8.3.1 二叉树Part 8.3.2 树的直径
  11. ssh登录工具 putty 和 生成.ppk文件的puttygen工具 如何使用puttygen生成密钥
  12. 2000元以内办公用计算机,2000元以内买什么笔记本 便宜实用笔记本【推荐】
  13. Just Cause系列游戏品鉴
  14. 关于风险管理,如何将思维从项目升维到项目群?
  15. 高颜值无线蓝牙耳机,南卡N2S芯片强劲音质好,还能当充电宝用
  16. 教程篇(6.4) 03. 设备注册 ❀ FortiManager ❀ Fortinet 网络安全专家 NSE 5
  17. OpenCV实战——拟合直线
  18. mysql grant proxy on_mysql grant配置授权
  19. elasticsearch 的分词
  20. jquery简单赋值取值

热门文章

  1. DAMA-DMBOK 数据治理功能框架
  2. GBase 8a开启防火墙安装集群添加端口策略
  3. 「MRC干货」如何快速构建一台高精度AGV
  4. 小程序嵌套H5的方式和技巧
  5. 人工智能技术的原理是什么,人工智能技术在实际应用中具有哪些优势?
  6. mysql生成uuid_MySQL生成UUID
  7. 【2018华科机试】十二进制
  8. iOS国际化(多语言)App名称国际化
  9. Python3 async def和@asyncio.coroutine的区别
  10. Word中无法插入公式的解决方案