POI Excel 08 读取重写Excel,单元格中使用\n换行符

@author YHC

读取Excel和重写Excel

click me!!看创建Excel代码!!!!!<<<<=====创建测试的Excel是POI Excel 02[工作薄中不同类型的单元格]

//初始化输入流
		InputStream inp = new FileInputStream("D:/workbook.xls");
		//创建读取对应的文件生成对象
	    Workbook wb = WorkbookFactory.create(inp);
	    //得到第0个工作薄
	    Sheet sheet = wb.getSheetAt(0);
	    //得到第3行 小标从0开始,所以是2
	    Row row = sheet.getRow(2);
	    //得到第三行第4个单元格 4D 小标从0开始所以是三
	    Cell cell = row.getCell(3);
	    //查看该单元格是否定义,如果没有定义返回NULL
	    //,否则返回一个逻辑上的单元格,如果没有则创建
	    //??为什么需要先判断为空,因为如果该单元格已经
	    //存在而且已经定义,如果你在创建,原来的单元格
	    //将会被你重新创建的单元格覆盖,这样做可以节约
	    //你的空间,因为没有重新创建对象
	    if (cell == null)
	        cell = row.createCell(3);
	    //设置单元格的类型是String字符串文本类型
	    cell.setCellType(Cell.CELL_TYPE_STRING);
	    //设定值
	    cell.setCellValue("a test");

	    //重新写如文件
	    FileOutputStream fileOut = new FileOutputStream("D:/workbook.xls");
	    wb.write(fileOut);
	    fileOut.close();
运行后的效果图:


单元格中使用\n 换行符:

          //创建Excel
		Workbook wb = new HSSFWorkbook();   //or new XSSFWorkbook();
		//创建工作薄
	    Sheet sheet = wb.createSheet();
        //创建行
	    Row row = sheet.createRow(2);
	    //创建单元格
	    Cell cell = row.createCell(2);
	    //设置单元格中的值 使用有\n换行符
	    cell.setCellValue("Use \n with word wrap on to create a new line");

	    //如果你需要使用换行符,你需要设置
	    //单元格的样式wrap=true,代码如下:
	    CellStyle cs = wb.createCellStyle();
	    cs.setWrapText(true);
	    cell.setCellStyle(cs);

	    //增加行的高度以适应2行文本的高度,设置高度单位(像素)
	    row.setHeightInPoints((2*sheet.getDefaultRowHeightInPoints()));

	    //调整该列宽度适应内容 
	    sheet.autoSizeColumn((short)2);
        //写入文件
	    FileOutputStream fileOut = new FileOutputStream("ooxml-newlines.xlsx");
	    wb.write(fileOut);
	    fileOut.close();
运行后的效果图:

需要jar包:


以上如果有写错误的地方,请大家指出! thanks!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值