我正在处理现有的.xlsx文件。任何人都可以与我分享,我怎样才能得到我当前的文件名?
我的意思是,假设我正在处理test.xlsx文件。如何使用apache poi获取工作簿“test.xlsx”的名称。
答案 0 :(得分:6)
POI可以从您关注的任何InputStream
打开工作簿。 (文件为lower memory,但您可以根据需要使用流,而且很多人都可以使用。如果一个流没有文件支持,那么它没有文件名,所以POI的任何数量都不会让你获得一个!
如果从文件中打开工作簿,则File
对象知道文件名。问这个!否则,如果从InputStream
打开,很可能不是文件名,所以没有什么可供应的。
最后,请注意,与存储在文件中的Sheet名称不同,文件本身的名称不是魔术。取test.xls
,将其复制到test2.xls
,并将其存储在数据库blob字段中。全部加载。它们都是同一个文件,但其中两个文件名不同,一个文件根本没有文件名!
答案 1 :(得分:0)
我通过将文件名存储在类字段变量
中解决了这个问题