zoukankan      html  css  js  c++  java
  • execl中设置的格式无法实现

    在一次项目中,需要导出execl表,并且要给表中的表格设置格式,因为每列的格式都不一样,需要单独设置设置这些格式,在后期使用中因为导入的数据过多,是的后面的单元格中设置的格式无法实现。

    每次打开execl表格时都会出现以下提示

    打开execl后会出现格式问题

    这是因为execl中单元格格式超出限制无法保存。

    查看代码后发现,在代码中给每次出现不同的单元格式后都是创建了一个HSSFCellStyle对象。解决办法就是讲HSSFCellStyle对象进行封装,每次调用的都是同一个HSSFCellStyle对象,然后对这个对象中的格式进行设置

     1 private HSSFCellStyle getCellStyleMode(HSSFCellStyle cellStyle, HSSFFont font, HSSFDataFormat format, int num) {
     2     cellStyle.setBorderTop(BorderStyle.THIN);
     3     cellStyle.setBorderBottom(BorderStyle.THIN);
     4     cellStyle.setBorderLeft(BorderStyle.THIN);
     5     cellStyle.setBorderRight(BorderStyle.THIN);
     6     cellStyle.setAlignment(HorizontalAlignment.CENTER);
     7     font.setFontName("Times New Roman");
     8     font.setFontHeightInPoints((short) 10);
     9     cellStyle.setFont(font);
    10     if (num == 1) {
    11         cellStyle.setDataFormat(format.getFormat("#,##0.00"));
    12     } else {
    13         cellStyle.setDataFormat(format.getFormat("#,##0.0"));
    14     }
    15         return cellStyle;
    16     }

    这样代码中对象减少,execl中保存的格式都是同一个对象,只是要对每个不同的单元格设置格式就行

  • 相关阅读:
    epoll
    Neighbor Discovery Protocol Address Resolution Protocol
    text files and binary files
    cron_action
    Automation Scripts
    Toeplitz matrix
    Stolz–Cesàro theorem
    stochastic matrix
    HTTP headers with the Link header field HTTP协议支持分页(Pagination)操作,在Header中使用 Link 即可
    Markov Process
  • 原文地址:https://www.cnblogs.com/houqx/p/10399702.html
Copyright © 2011-2022 走看看