POI与JXL自动列宽设置的方法_jxl 自适应宽度-程序员宅基地

技术标签: 数据导入导出  自动列宽  POI  web开发  JXL  


在我的前一篇博客《POI与JXL写Excel的性能对比》中,列举了POI与JXL两种写Excel单元格的方式。

通常,为了让导出效果更好,会设置单元格根据内容来设置自动列宽,在POI中,使用方法 sheet.autoSizeColumn((short) i);能达到列宽自适应的效果,其中i为列索引。


在JXL中,一般通过下列方式设置列宽

CellView cv = new CellView();
cv.setAutosize(true);//自动宽度
cv.setSize(18); //最小宽度

sheet.setColumnView(i,cv);

但上述方法在有中文字符的情况下,根本达不到自动列宽的效果。


通过下列方式,则可以很好地达到自动列宽的效果。其中data为要写入的文本内容,+4是为了调整效果。

if(StrUtil.isNotBlank(data)&&(data.getBytes().length+4)>sheet.getColumnWidth(i-bempty))
	sheet.setColumnView(i,data.getBytes().length+4); //一个中文占2个字节,经过调试+4后效果比较理想

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/jrn1012/article/details/25335083

智能推荐

浏览器缩小出现滚动条_怎么做到缩小网页窗口时右边会多一个滑块-程序员宅基地

文章浏览阅读1.7k次。页面设置固定宽度,浏览器缩小后背景留白,裁切解决办法:_怎么做到缩小网页窗口时右边会多一个滑块

java map初始化并赋值_map初始化直接赋值-程序员宅基地

文章浏览阅读1w次,点赞3次,收藏6次。**第一种方式:**static 块public class MapTest { private static final Map<String, String> myMap = new HashMap<String, String>(); static { myMap.put("张三", "北京"); myMap.put("李四", "上海"); }}最常规的初始化方式。第二种方式:双括号初始化 (匿名内部类)pu_map初始化直接赋值

UVM验证平台phase机制_final_phase-程序员宅基地

文章浏览阅读3.4k次,点赞2次,收藏15次。简要概括uvm的phase机制知识点,适用于知识点复习以及梳理_final_phase

进行大数据爬取数据,存入Mongodb_mongodb里的数据放到网页-程序员宅基地

文章浏览阅读2.6k次。爬虫刚入门,对赶集网进行一次所有商品大数据的爬取使用了多线程,存到数据库里,目前不知道要爬多久from multiprocessing import Poolfrom channel_extract import channelfrom page_parsing import get_item_info, get_linksdef get_a_mongodb里的数据放到网页

[zz]程序员人生之路_aokikyon-程序员宅基地

文章浏览阅读634次。[zz]程序员人生之路2011-05-07 13:33转载自 aokikyon最终编辑 aokikyon程序员人生之路(强烈推荐,分析的透彻!),某程序达人的人生感悟,估计没有半个甲子的时_aokikyon

20-调用百度AI的文字识别-程序员宅基地

文章浏览阅读118次。本来准备自己写识别的,貌似现在能力不足,直接偷懒用百度的api吧from aip import AipOcr""" 你的 APPID AK SK """APP_ID = 'xxx'API_KEY = 'xxx'SECRET_KEY = 'xxx'client = AipOcr(APP_ID, API_KEY, SECRET_KEY)""" 读取图片 ""...

随便推点

BST 二叉搜索树 非指针版_二叉搜索树无指针-程序员宅基地

文章浏览阅读863次。BST BST即为binarysearch tree 二叉搜索树为平衡树的基础,所以很要学习的必要。 BST的结点满足一个基本条件就是:结点k的左子树中所有值小于结点k的值,结点k的右子树的所有值大于结点k的值,显然这是一个递归定义的结构。 这个结构就使得中序遍历出来的序列即是一个升序的序列。一个优秀的二叉搜索树能够在log(n)的时间内进行查找、删除一个元素等。_二叉搜索树无指针

Ubuntu18.04 单网卡DHCP服务配置_ubuntu配置dhcp上网-程序员宅基地

文章浏览阅读3.3k次,点赞2次,收藏7次。DHCP Ubuntu18.04_ubuntu配置dhcp上网

pandas dataframe选取某行或列做元素相乘_dataframe乘法-程序员宅基地

文章浏览阅读1w次,点赞3次,收藏10次。dataframe整体做乘法时,不需要借助其他方法,直接a*b即可>>> import pandas as pd>>> import numpy as np>>> a = pd.DataFrame([1,2,3])>>> b = pd.DataFrame([2,5,3])>>> a*b 00 21 102 9但是,如果想要选取某行或某列做乘法,要使用loc方法,此时则会变成矩阵乘法_dataframe乘法

SQL注入——基于报错的注入(五)_报错注入两种方式-程序员宅基地

文章浏览阅读1k次。本章目的普及报错功能函数extractvalue()的用法,演示基于报错的SQL注入基本流程。实验环境攻击机:Pentest-Atk(1)操作系统:Windows10(2)安装的应用软件:Sqlmap、Burpsuite、FireFox浏览器及其插件Hackbar、等(3)登录账号密码:操作系统帐号Administrator,密码Sangfor!7890想机:A-SQLi-Labs(1)操作系统:Centos7(2)安装的应用软件:Apache、MySQL(MariaDB)、PHP:DV_报错注入两种方式

Scratch编程(十二)侦测模块_视频侦测scratch游戏源码-程序员宅基地

文章浏览阅读8.2k次,点赞4次,收藏19次。侦测模块积木组里的所有的积木都是用来检测场景中某一参数的变化,通过参数变化来为下一步操作提供条件依据。具体分为:1、侦测运动积木组 2、侦测按键积木组 3、侦测基本参数积木组 4、其他积木组一、Scratch侦测运动积木组1、碰到鼠标指针:侦测角色碰到鼠标指针的一瞬间 (下拉三角可选舞台边缘)2、碰到颜色X:侦测角色碰到指定的颜色x1的一瞬间3、颜色x1碰到颜色x2:侦测颜色x1碰到颜色x2的一瞬间4、到鼠标指针的距离:侦测角色到鼠标指针的距离(有多个..._视频侦测scratch游戏源码

原python实现素数判断_素数判断算法(python实现)-程序员宅基地

文章浏览阅读852次。素数是只能被1与自身整除的数,根据定义,我们可以实现第一种算法。算法一:defisprime(n):if n < 2: returnFalsefor i in range(2,int(math.sqrt(n))+1):if n % i ==0:returnFalsereturn True任意一个合数都可分解为素数因子的乘积,观察素数的分布可以发现:除 2,3 以外的素数必定分布在 6k (k..._if n < 2: return false for i in range (2,n): if n % i == 0: return false els

推荐文章

热门文章

相关标签