java设置列宽_java用POI设置Excel的列宽
需求:将某个excel中的某一列列宽设置为35(该数值是Excel中显示的列宽值)。
poi中设置列宽的方法为:
HSSFSheet.setColumnWidth(int columnIndex, int width);1
第一个参数好理解–列序号,关键是第二个参数宽度的值,应该设置为多少呢?
我做了以下尝试,发现均不好使
sheet.setColumnWidth(0, 35); //a
sheet.setColumnWidth(0, (int)35.7*35); //b
sheet.setColumnWidth(0, 256*35); //c1
2
3
查了以下,上面c这种写法比较接近想要的结果,因为setColumnWidth这个方法宽度的单位是字符数的256分之一,但是我想要点开Excel查看那一列的宽度时就显示35,而不是34.29。如何比较精确地设置列宽呢?我想到了拟合方程这四个字。
所谓拟合是指已知某函数的若干离散函数值{f1,f2,…,fn},通过调整该函数中若干待定系数f(λ1, λ2,…,λn),使得该函数与已知点集的差别(最小二乘意义)最小。(来自百度百科)
说白了就是给你几个离散点,让你找规律,求出这些点满足的函数表达式y=f(x)。有人要说了,这玩意上学的时候都没学会,现在更不会求了。没关系,我们可以借助软件的力量。最简单的软件就是Excel了。
说干就干。先尝试以下设置
sheet.setColumnWidth(0, 9100);
sheet.setColumnWidth(0, 9150);
sheet.setColumnWidth(0, 9200);
sheet.setColumnWidth(0, 9250);
sheet.setColumnWidth(0, 9300);
sheet.setColumnWidth(0, 9350);1
2
3
4
5
6
将生成的Excel的对应列的实际宽度记录下来:
[34.86,35,35.29,35.43,35.57,35.86]
以实际宽度为自变量x,你给的值为函数值y,得到一系列离散点:(34.86,9100)(35,9150)(35.29,9200)(35.43,9250)(35.57,9300)(35.86,9350)
新建一个工作表,将数据输入
x
y
34.86
9100
35
9150
35.29
9200
35.43
9250
35.57
9300
35.86
9350
选中这些数据,点插入->图表->散点图,数据有了之后,再添加趋势线,选线性,并显示公式,结果如图
好我们得到了y与x的关系,接下来代码里就该这样设置了:
sheet.setColumnWidth(0, 252*width+323);//width=351
但是这个公式并不十分准确,比如当width=9时,生成的Excel实际宽度却是9.43,怎么办?多取一些点再进行拟合。
于是有了下面的结果:
最后我们的表达式为:y=255.86x+184.27
代码里这样设置
sheet.setColumnWidth(0, 256*width+184);1
这次就比较精确了。
java设置列宽_java用POI设置Excel的列宽相关推荐
- java设置excel行间距_java用POI设置Excel的列宽
需求:将某个excel中的某一列列宽设置为35(该数值是Excel中显示的列宽值). poi中设置列宽的方法为: HSSFSheet.setColumnWidth(int columnIndex, i ...
- java用POI设置Excel的列宽
需求:将某个excel中的某一列列宽设置为35(该数值是Excel中显示的列宽值). poi中设置列宽的方法为: HSSFSheet.setColumnWidth(int columnIndex, i ...
- poi 获取excel列宽度_JAVA使用POI获取Excel的列数与行数
JAVA使用POI获取Excel的列数与行数 发布于 2020-8-19| 复制链接 Apache POI 是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Ja ...
- java自动生成生成java透视表_java基于poi导出excel透视表代码实例
这篇文章主要介绍了java基于poi导出excel透视表代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 从前,我是一个前端程序猿,怀着对打通 ...
- java统计行列和字数的函数_JAVA使用POI获取Excel的列数与行数
前言 报表输出是Java应用开发中经常涉及的内容,而一般的报表往往缺乏通用性,不方便用户进行个性化编辑.Java程序由于其跨平台特性,不能直接操纵Excel.因此,本文探讨一下POI视线Java程序进 ...
- java excel 列数_JAVA使用POI获取Excel的列数与行数
前言 报表输出是Java应用开发中经常涉及的内容,而一般的报表往往缺乏通用性,不方便用户进行个性化编辑.Java程序由于其跨平台特性,不能直接操纵Excel.因此,本文探讨一下POI视线Java程序进 ...
- POI设置excel某列值为文本格式
excel单元格格式默认为[常规],当某列限定必须从下拉框选择一个纯数字文本的时候,必须将单元格格式设置为[文本]. 否则即使输入的值和下拉框的一致,excel都认为输入的值是常规类型,而下拉框的值为 ...
- 【poi第七节】poi设置excel 设置字体格式,java设置excel设置字体格式
poi设置excel 设置字体格式,java设置excel设置字体格式 import org.apache.poi.hssf.usermodel.HSSFRichTextString; import ...
- 【poi第五节】poi设置Excel单元格边框 和 背景色,java设置Excel 单元格边框 和 背景色
poi设置Excel单元格边框 和 背景色,java设置Excel 单元格边框 和 背景色 import org.apache.poi.hssf.usermodel.HSSFWorkbook; imp ...
- excel2010设置列宽为像素_怎么改变Excel中列宽的像素
展开全部 1.打开EXCEL工作bai簿,在[du开始]选项卡-[单zhi元格]功能组中[格式]下拉dao列表中可以设置[行回高].列宽同样在这答里可以找到设置. 2.在行号上点鼠标右键,在弹出的快捷 ...
最新文章
- 2020mysql下载教程_Windows10 安装MySQL详细教程2020版 亲测亲写
- 动态创建的 CEdit 被限制长度,增加 ES_AUTOHSCROLL 属性;被无法Tab激活焦点,增加 WS_TABSTOP 属性(转)...
- 二叉树的最长的路径长度最大路径和
- AbstractQueuedSynchronizer源码解析
- 为CEDIT添加有颜色的边框
- 第一百三十九期:11月数据库排行:排名前三数据库分数暴跌
- Java面试——MyBatis系列总结
- python分类时特征选择_关于python:是否有可用于分类数据输入的特征选择算法?...
- Golang 【大字符串相加,求和】
- maven中常用jar包插件
- springboot与docker整合
- python求立方尾不变_蓝桥杯—立方尾不变,有些数字的立方的末尾正好是该数字本身...
- github的学习和使用
- 测试显卡专业性能软件,如何测试显卡的性能?几款的显卡性能检测软件推荐
- 微信小程序 服务通知
- 2007年春节联欢晚会相声《免费电话》李金斗、大兵、赵卫国
- Matter理论介绍-通用-1-03:桥接器-数据结构
- 基于51单片机万年历可调电子时钟闹钟温度(实物图+源码+仿真+原理图+论文)
- html 气泡动画效果,css3实现好看的气泡按钮动画特效
- 淘宝美工设计视频教程云盘分享