【问题标题】:Set page view mode in excel file using apache poi使用apache poi在excel文件中设置页面查看模式
【发布时间】:2011-10-22 16:42:02
【问题描述】:

Excel 有不同的查看工作表的模式:普通、页面布局、分页预览。 (在 excel 2010 中:在视图选项卡中)。工作簿中每个工作表的查看模式分别保存,再次打开时恢复。

我正在尝试找到一种使用 HSSF 或 XSSF 设置视图模式的方法。 不幸的是,在旧的二进制格式中,找到答案似乎是不可能的。 在 2007+ OOXML 格式差异确实给出了基本答案,查看 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 选项来编辑该属性? (或者问题的唯一解决方案是解压缩文件,编辑它并重新打包)

谢谢!

【问题讨论】:

    标签: java excel apache-poi xssf hssf


    【解决方案1】:

    XSSF 不会直接暴露这一点,但如果你愿意,你可以得到它

    XSSFSheet 对象调用getCTWorksheet 以获取支持工作表的低级XML 对象。 CTWorksheet 提供了一个getSheetViews 方法。你会想要类似的东西:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-05
      • 1970-01-01
      相关资源
      最近更新 更多