使用apache poi在excel文件中设置页面视图模式
Excel有不同的模式来查看工作表:正常,页面布局,分页预览。 (在Excel 2010中:在视图选项卡中)。 对于工作簿中的每个工作表单独保存查看模式,并在再次打开时进行恢复。
我试图find一种方法来设置视图模式使用HSSF或XSSF。 在旧的二进制格式,find答案似乎很不幸的是不可能的。 在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选项来编辑该属性? (或解决问题的唯一办法是将文件解包,编辑并重新打包)
谢谢!
XSSF不直接公开这个,但你可以得到它,如果你想
从XSSFSheet
对象中,调用getCTWorksheet
获取支持该表的低级XML对象。 CTWorksheet提供了一个getSheetViews
方法。 你会喜欢想要的东西,如:
CTSheetView view = sheet.getCTWorksheet().getSheetViews().getSheetViewArray(0); view.setView(STSheetViewType.PAGE_LAYOUT);
- 用java对象映射excel字段的最佳方式
- 如何从Excel文件中提取外部引用的列表
- 使用Java将Excel数据导入到Mongodb
- 编写Excel文件时出现Apache POI OutOfMemoryError
- 使用POI读取大型Excel时遇到内存问题
- 如何获得单元格的背景颜色使用Apache poi?
- 在使用POI将公式单元格插入到Excel中以及从文件系统打开/closures时如何摆脱“想要将更改保存到”Test.xlsx“
- 如何使用apche POI在excel中只读专栏
- android exceptionInInitializerError导致无法确定loggingtypes,而新的HSSFWorkbook(inputStream)