当前位置: 首页 > 知识库问答 >
问题:

excel中的Apache POI分页符

胥宏义
2023-03-14

大家好,我只是想问一下如何使用Java中的Apache poi删除excel中第N列的分页符。我已经在代码中设置了打印区域直到P列。但是当我试图打印生成的excel时,它总是设置分页符在N列。

如何在Java上使用Apache poi调整列中的分页符?

共有1个答案

杨选
2023-03-14

如果目标是在打印时所有列(a:p)都适合一个页面宽度,那么可以使用缩放工作表来解决这个问题。

下面的代码使用Sheet.SetAutoBreaks和Sheet.SetFitTopage与PrintSetup.SetFitWidth和PrintSetup.SetFitHeight组合,将打印设置设置为缩放以适应。宽度设置为使所有列都适合1页宽度,高度设置为自动设置,因此当有足够的行时,将使用多页。

import java.io.FileOutputStream;
import org.apache.poi.ss.usermodel.*; 
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

public class CreateExcelAllColumnsFitToOnePageWidth {

 public static void main(String[] args) throws Exception {
  //Workbook workbook = new HSSFWorkbook();
  Workbook workbook = new XSSFWorkbook();
  Sheet sheet = workbook.createSheet();

  for (int r = 0; r < 200; r++) {
   Row row = sheet.createRow(r);
   for (int c = 0; c < 16; c++) {
    Cell cell = row.createCell(c);
    cell.setCellValue("Lorem ipsum");
    if (r==0) sheet.autoSizeColumn(c);
   }
  }

  sheet.setAutobreaks(true);
  sheet.setFitToPage(true);
  PrintSetup printSetup = sheet.getPrintSetup();
  printSetup.setFitHeight((short)0);
  printSetup.setFitWidth((short)1);


  String fileout = (workbook instanceof HSSFWorkbook)?"Excel.xls":"Excel.xlsx";
  FileOutputStream out = new FileOutputStream(fileout);
  workbook.write(out);
  out.close();
 }
}
 类似资料:
  • 用户可以将Excel文档保存为. xls或xml-table。结果是一个具有固定结构的xml-file,Excel可以用它纠正工作。 可以用java中的ApachePOI打开这种类型的excel文件吗? 事先谢谢你,安德烈。

  • 注意:我尝试了此代码,但它们创建的分页符不是分节符: 其他代码: 此代码都会创建分页符而不是分节符。 首先,如何创建分节符?第二,如何设置不同的页码格式?第三,如何为每个部分设置“不同的首页”选项?谢谢

  • 嗨,我想在第一行搜索一个字符串,如果找到了,我想移动那一列。

  • 问题内容: 尝试使用ApachePOI打开Excel时,我得到 我检查了。没有创建这样的文件夹。我正在使用Apache POI 3.6版。 有什么帮助吗?类似的代码在其他工作区中运行良好。在这里不知所措。 码: 问题答案: 您为什么要制作一个非常好的文件,将其包装在中,然后要求POI必须为您缓冲整个文件,以便可以进行随机访问?如果直接将文件直接传递给POI,生活会好很多,因此可以根据需要跳过它!

  • 有人知道如何改变页面大小(从字母到A4)为(docx)吗? 我找不到任何像XSSFDocument(xlsx)中那样的打印设置。 谢谢你的帮助。

  • 问题内容: 我正在生成一个动态pdf文件,该文件包含大约10,000个用户的数据,通常该应用程序是使用MySQL和PHP开发的。动态内容是如此繁重,以至于我发现很难在课堂上进行处理。因此,我使用将输出的PHP页面转换为HTML文件。现在,已成功生成html文件和pdf文件。但是我想在每个用户的数据之后留下一个分页符,也就是说,每个用户的数据都必须从一个新的页面开始。我无法使用任何HTML标记,因为