JAVA操作Excel时文字自适应单元格的宽度设置方法

2023-11-18

      使用JAVA操作Excel通常都使用JXL,方法很简单网上也有很多的教程,然后往往一些细节性的问题却导致我们这些Programmer苦恼不已。这两天帮一个朋友做一个Excel表格自动生成的小软件,就遇到的类似的问题。

      问题描述:通过Java向Excel的一个单元格中写入大量的文字,即使在文字中使用  \n  符号进行换行操作,当打开Excel表格的时候,发现文字不能按照我们预先设定的方法换行,而是显示在一行里面,导致整个Excel表格显示都乱掉了。必须得通过鼠标单击一下这个单元格文字才能按照单元格的宽度和程序中的换行命令实现换行的显示效果。

      这就很不爽了,每次我打开Excel的时候,还要把文字多的单元格全部用鼠标单击一下,才能按照我程序设定的显示方式显示。

      不过,后来仔细想一下,其实就是需要文字按照单元格设定的宽度/高度显示文本就行了,API中应该有相应的方法来实现的,只是我没找到而已。功夫不负有心人,在Google的帮助下,终于在百花丛中发现了她。

 

WritableFont fontTitle = new WritableFont(WritableFont.TIMES, 9, WritableFont.NO_BOLD);
fontTitle.setColour(jxl.format.Colour.RED);
WritableCellFormat formatTitle = new WritableCellFormat(fontTitle);
formatTitle.setWrap(true);
/*-------------------------------------------------------------------------*/
WritableSheet       m_sheet = null;
m_sheet = m_writeBook.createSheet("第一页", 0);            
m_sheet.setColumnView(0, 10);            
m_sheet.setRowView(0, 500);            
Label label  =   new  Label(0,  0,  "阿科是个不错的小伙子阿科是个不错" +
               "的小伙子阿科是个不错的小伙子", format);   
//将定义好的单元格添加到工作表中    
m_sheet.addCell(label);  

        如上例当中,虽然列宽设置的仅仅是10,而文字的长度远远的超过10,但是由于使用WritableCellFormat的设置选项: formatTitle.setWrap(true)。从而使得单元格的文字按照单元格的列宽来自动换行显示。

 


我们团队有着十几年的期货程序化交易算法与软件研发经验,基于C++ Qt技术研发了具有自主知识产权的期货智能程序化交易一体化系统平台,该平台封装了二百多个量化指标,具有低时延、高性能、小滑点、可定制和跨平台的特点。团队致力于将人工智能技术与传统的程序化交易技术相结合为客户提供灵活可定制的期货智能程序化交易服务和产品。

       

        有问题,欢迎邮件讨论:qinpanke@gmail.com

        2013年8月31日于北京邮电大学新科研楼302室

       

     

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JAVA操作Excel时文字自适应单元格的宽度设置方法 的相关文章

随机推荐

  • C/C++ 指针详解

    指针详解 参考视频 https www bilibili com video BV1bo4y1Z7xf 感谢Bilibili fengmuzi2003的搬运翻译及后续勘误 也感谢已故原作者Harsha Suryanarayana的讲解 RI
  • 【前端技术】Vue在打包之后出现Css样式冲突,解决方法。

    原文链接 先说问题 1 在做vue项目打包时出现Css样式冲突的问题 在本地运行项目时样式都是正常 但在服务器进行打包之后项目的整体样式就有问题了 举例说明 1 图片大小发生变化 怎么改也改不好 2 在查看F12中会多出当前页面没有设置过的
  • 关闭HttpClient控制台输出语句

    关闭HttpClient控制台输出语句 HttpClient相信大家都不陌生 在Java中经常用来在后台进行一些请求访问或者接口调用 当然这里不是介绍HttpClient使用的 关于HttpClient使用方面的文章 大家可以去百度或者Go
  • [leetcode] 推多米诺 双指针

    题目链接 一开始想多了 像成了真实生活中的那种会叠加的状态 就比如 RRL 中 左边的两个 R 会让第三个 L 向右边倾斜 直接用前缀和进行操作 但是发现示例1都无法通过 所以说是错的 正确的想法是 每一个暂未确定状态的 都由这个字符两侧最
  • TreePanel树形节点不收缩刷新

    TreePanel树形节点不收缩刷新 遇到的问题 在使用Ext树形组件的时候 下层节点的刷新 总是需要下层节点全部搜索然后再展开 如果需要实时的从后台获取数据 改变某些节点的text或者icon时 就显得不够优雅了 解决方案 负责树形组件T
  • 无法启动此程序因为计算机中丢失api-ms-win-crt-runtime-l1-1-0.dll

    系列文章目录 文章目录 系列文章目录 前言 安装 前言 出现这个问题是因为本地api ms win crt runtime l1 1 0 dll 版本过低或者不存在 Visual C Redistributable for Visual S
  • 【铨顺宏项目推荐】RFID无线射频识别技术的设计思路

    一 项目背景 在传统的珠宝物流管理中 条形码技术通常被使用 虽然该技术可以在一定程度上提高物流管理效率 但仍不能满足现代珠宝行业的需求 条形码存储信息量低 信息不可追加 易损坏 读取位置要求高等问题逐渐显现 RFID与传统的条码识别方法相比
  • _thiscall调用约定的简单概念

    thiscall 我们知道在c中由三种调用约定 cdecl stdcall和 fastcall 其中 stdcall调用约定是windows平台的 在c 中还有一种约定 thiscall调用约定 它是一种类成员方法调用约定 当我们说起 th
  • python3神经网络学习NN学习初步(一)

    1 神经网络的概念 我们用一张图来了解一下吧 多层向前神经网络由以下部分组成 输入层 input layer 隐藏层 hidden layers 输入层 output layers 补充 一般第一层是输入层 最后一层是输出层 其他的的都是中
  • Impala presto hbase hive sparksql

    Impala 技术点梳理 http www cnblogs com TiestoRay p 10243365 html Impala 优点 实时性查询 计算的中间结果不写入磁盘 缺点 对于内存的依赖过于严重 内存溢出直接导致技术任务的失败
  • MainWindow.h

    ifndef MAINWINDOW H define MAINWINDOW H include
  • 中小企业如何低成本实施MES管理系统

    中小企业在市场竞争中需要有高效的管理体系来支持其运营和发展 中小企业MES管理系统是一种先进的管理系统 可以提升工厂智能化水平 提高生产效率 是中小企业必须采取的有效管理工具 然而 由于资金和技术的限制 中小企业往往难以承担高额的软件购置和
  • yocto编译常见问题及解决方法

    1 opt yocto rel share downloads exists but you do not appear to have write access to it 这个是没有权限往指定的目录里写 解决方法 将build目录下对应
  • oralce 超出表空间限额问题

    oralce 超出表空间限额问题 Pl sql建表时报 超出表空间限额 的错误 检查表空间 只占了3 的空间 最后经提醒原来是数据库用户默认只有15M的空间 最后通过修改用户的权限 不限制存储空间 解决问题 来自 ITPUB博客 链接 ht
  • 【VSCode】推荐一款Microsoft Visual Studio Code能在编辑器内智能补全代码的插件 - Tabnine AI

    Tabnine AI Autocomplete for Javascript Python Typescript PHP Go Java Ruby more Tabnine是一个AI代码补全插件 支持JavaScript Python Ja
  • openGL之API学习(一九四)glGenTextures glActiveTexture

    glGenTextures产生的是一个比较小的整数id 纹理单元名 glActiveTexture激活的是纹理单元号 GL TEXTUREi 它们二者的关系为GL TEXTUREi GL TEXTURE0 id glBindTexture使
  • MySQL server has gone away (BrokenPipeError(32, 'Broken pipe'))[MySQL插入内容超过4M]

    MySQL server has gone away BrokenPipeError 32 Broken pipe MySQL插入内容超过4M Bug描述 用Python的pymysql向MySQL数据库insert插入数据时 遇到报错信息
  • 估算服务器处理数据性能,服务器性能计算方法-20210720074826.docx-原创力文档

    一 数据库服务器性能计算需求分析 考虑到广州市公安局超级情报系统 SIS 设备升级项目的数据库 服务器的性能 我们建议采用主流的TPC C值进行性能估算 TPC C 是一种旨在衡量联机事务处理 OLTP 系统性能与可 伸缩 性的行业标准基准
  • Multi-mode pattern generator

    Multi mode pattern generator verilog编写 支持如下模式 Full screen White Full screen Black Full screen Red Full screen Green Full
  • JAVA操作Excel时文字自适应单元格的宽度设置方法

    使用JAVA操作Excel通常都使用JXL 方法很简单网上也有很多的教程 然后往往一些细节性的问题却导致我们这些Programmer苦恼不已 这两天帮一个朋友做一个Excel表格自动生成的小软件 就遇到的类似的问题 问题描述 通过Java向