2013-03-06 83 views
0

我使用了Apache POI库(POI-3.8-20120326.jar)Apache的POI插入文件名中的页眉或页脚

我怎么能在一个XLS(HSSF)文档的页脚添加文件名?

我的做法是这样的:

final static public String FILE_NAME = "&[File]"; 
public static void insertFilename(Sheet sheet) { 
    sheet.getFooter().setLeft(FILE_NAME); 
} 

的问题是,在Microsoft Excel 2003和中显示

文件]

如果我打开页脚编辑器,单击该领域,什么都不改变,并保存 - 它的工作原理。 编辑器显示它作为

& [文件]

有一种解决方法或卑鄙的手段来避免这种情况?

谢谢

回答

2

它可能看起来像在Excel中“& [文件]”,但是这就是它不是如何在内部存储。您正在使用HSSF您的.xls文件,所以请使用以下static HeaderFooter method获得的文件名内部的Excel代码:

import org.apache.poi.hssf.usermodel.HeaderFooter; 

String fileIndicator = HeaderFooter.file(); 

快速查看源代码判断该内部代码字符串“& F”。

如果某人正在使用XSSF作为.xlsx文件,则没有相应的file方法。但是,documentation for XSSFHeaderFooter表示您可以直接使用字符串“& F”。