我正在使用apache poi库(poi-3.8-20120326.jar)
我如何在一个xls (hssf)文档的页脚添加文件名?
我的方法如下:
final static public String FILE_NAME = "&[File]";
public static void insertFilename(Sheet sheet) {
sheet.getFooter().setLeft(FILE_NAME);
}
问题是,Microsoft Excel 2003显示
文件]
如果我打开页脚编辑器,在字段中单击,不做任何更改,然后保存——它可以工作。编辑器显示为
[文件]和
是否有解决方法或肮脏的技巧来避免这种情况?
谢谢
在Excel中可能看起来像"&[File]",但这不是它内部存储的方式。对于.xls文件,您将使用HSSF,因此使用以下静态HeaderFooter方法获取文件名的内部Excel代码:
import org.apache.poi.hssf.usermodel.HeaderFooter;
String fileIndicator = HeaderFooter.file();
快速查看源代码可以确定内部代码是字符串"&F"。
如果有人对.xlsx文件使用XSSF,则没有相应的file
方法。但是,XSSFHeaderFooter的文档指出,您可以直接使用字符串"&F"。