当前位置: 首页 > 面试题库 >

使用Apache POI在Excel文件中设置页面查看模式

包永新
2023-03-14
问题内容

Excel具有用于查看工作表的不同模式:“正常”,“页面布局”,“分页预览”。(在excel
2010中:在“视图”选项卡中)。对于工作簿中的每个工作表,视图模式分别保存,并在再次打开时恢复。

我试图找到一种使用HSSF或XSSF设置视图模式的方法。不幸的是,在旧的二进制格式中,找到答案似乎是不可能的。在2007+
OOXML格式中,diffing确实给出了基本答案,在普通视图中查看xl / worksheets / sheet1.xml:

<sheetViews>
 <sheetView rightToLeft="1" tabSelected="1" zoomScaleNormal="100" workbookViewId="0">
</sheetViews>

在页面布局视图中:

<sheetViews>
 <sheetView rightToLeft="1" tabSelected="1" view="pageLayout" zoomScaleNormal="100" workbookViewId="0"/>
</sheetViews>

那是每张纸上的第二个标签。是否有任何XSSF API选项可编辑该属性?(或者解决该问题的唯一方法是解压缩文件,对其进行编辑并重新打包)

谢谢!


问题答案:

XSSF不会直接公开它,但是您可以根据需要进行了解

从该XSSFSheet对象,调用getCTWorksheet以获取支持工作表的低级XML对象。CTWorksheet提供了一种getSheetViews方法。您会想要这样的东西:

 CTSheetView view = sheet.getCTWorksheet().getSheetViews().getSheetViewArray(0);
 view.setView(STSheetViewType.PAGE_LAYOUT);


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

  • 我正在写一个程序,它需要从excel文件中读取和写入数据,而不考虑格式(xls或xlsx)。 我知道ApachePOI,但它似乎有不同的类来处理xls文件(HSSF)和xlsx(XSSF)文件。 任何人都知道我将如何实现我在这里的目标。(也欢迎使用POI以外的API的想法)。

  • 用户可以将Excel文档保存为. xls或xml-table。结果是一个具有固定结构的xml-file,Excel可以用它纠正工作。 可以用java中的ApachePOI打开这种类型的excel文件吗? 事先谢谢你,安德烈。

  • 在Liferay IDE中创建portlet时,我已将其配置为具有Liferay的配置模式。作为回应,wizart创建了包含以下文本的JSP文件: 如何从Liferay调用此页面查看此文本?单击扳手图标并选择时,我看不到类似的内容。 更新 路径设置正确,因为它是由向导设置的。 问题是如何通过鼠标从Web界面调用这个JSP?

  • 我想制作一个文本框,它看起来像上图中右边的那个。我尝试按照文档进行操作,并编写了以下代码。 上述代码输出上图左侧显示的文本框。在此方面的任何帮助都将不胜感激。

  • 我是编程界的新手。嗯,我正在尝试使用ApachePOI库读取excel文件(5行5列)。我实际上有两个相同问题的实现。在第一个代码片段中,我只是读取excel文件并将其打印到控制台中。 然而,现在我正试图将读取的excel数据保存到一个数组中。所以我想在动态获取excel行和列大小后设置数组大小。但令我惊讶的是,当我执行第二个代码段时,似乎“while(cellIterator.hasNext()