JXL自动换行的实现

作者: 张明云 | 来源:发表于2015-03-06 12:51 被阅读331次

  Java语言中,操作Excel文件比较知名的库有:POI和JXL,我一直使用JXL,通过JXL写文件时,对于同一个单元格内容需要换行显示时直接在字符串后面加上"\n"是不能达到效果的,必须通过WritableCellFormat来完成该功能,具体实现如下:

// 打开文件
WritableWorkbook workBook = Workbook.createWorkbook( new File( filePath ) );
// 创建sheet
WritableSheet sheet0 = workBook.createSheet("详细评测信息", 0 );
// 设置单元格格式
WritableFont writableFont = new WritableFont(WritableFont.createFont("宋体"),11, WritableFont.NO_BOLD, false);
WritableCellFormat writableCellFormat = new WritableCellFormat(writableFont);
writableCellFormat.setWrap(true);
// 操作单元格
String content = "hello" + "\n" + "world" + "\n" + "!";
sheet0.addCell( new Label(0, 0, content, writableCellFormat) );
// 写文件
workBook.write( );
// 关闭文件
workBook.close( );

  在使用JXL的过程中,我总结了如下几点需要注意的地方:

  • JXL只支持office2003及以前的版本,建议在读写文件的时候以后缀为xls文件格式的方式操作;

  • JXL对单个excel文件的限制是在5M,对于超过5M的文件处理会比较麻烦,极有可能OOM;

  • JXL中获取sheet表中的行数是返回有内容的总行数,有些单元格看上去没有内容但里面可能存在空格,所以对于需要操作的excel表格应该将多余的空行删掉;

  • JXL对excel文件中的内容全部是按照U16-LE编码方式处理的,一定要注意excel文件的编码格式,否则有可能出现读取、写文件时出现乱码的现象,我的经验是使用WPS而不是office操作excel文件;

参考资料:

相关文章

  • JXL自动换行的实现

      Java语言中,操作Excel文件比较知名的库有:POI和JXL,我一直使用JXL,通过JXL写文件时,对于同...

  • pre 自动换行

    pre 标签实现自动换行,在css添加如下属性:

  • EXCEL中的自动换行与自动调整行高

    表现:自动换行本身可实现列宽不变,而自动增加行数;但当行高固定时,行数会增加,行高仍固定。 说明:自动换行调整的对...

  • ReactNative 布局自动换行的实现

    核心思想:基于row布局的wrap属性实现自动换行 效果

  • HTML

    HTML Textarea 自动换行实现 textarea 添加 cols 和 wrap 属性,其中 wrap 设...

  • Weex textare 自动换行实现(小瑕疵)

    之前写过一个也是自动换行, 原生实现换行, 针对iOS 闲来无事, 刚好有个小伙伴问我这个实现, 于是研究一番, ...

  • html

    :p标签的文本会在一个段落中自动换行。div标签内的文本也会在一个段落中自动换行。 :换行标签,使自动换行。文本格...

  • css列表换行小技巧

    列表一行容不下自动换行 追加内容居右居下! 实现思路1、追加伪类占用位置迫使内容换行,后续内容居右实现效果 htm...

  • 格式处理

    white-space:normal|nowrap(不自动换行)|pre(换行、空格、tab保留住,不允许自动换行...

  • 伪元素的妙用

    1. 使用自增功能实现列表序号 2. 使用after实现自动换行 3. 使用css的attr函数实现placeho...

网友评论

    本文标题:JXL自动换行的实现

    本文链接:https://www.haomeiwen.com/subject/oatvxttx.html