apache-poi - 如何创建 POI VBAMacroReader(POIFSFileSystem fs)
问题描述
我目前有工作代码
pkg = OPCPackage.open(stream);
// process worksheets in pkg...
mr = new VBAMacroReader(stream);
// process macros
问题是第一个调用读取流,然后第二个调用无法读取它。解决方法是创建多个 BufferedInputReaders 可以工作但显然都是错误的。为什么首先扫描 pkg 两次?
我应该做的是打电话
new VBAMacroReader(pkg.somehowGetPOIFSFileSystem())
但是,GetPOIFSFileSystem() 应该是什么还不清楚。
(我只有一个流作为源,而不是文件,它来自网络。只需要为 .xlsm 工作,而不是 .xls。但显然宏部分是二进制的。)
任何帮助表示赞赏。
解决方案
推荐阅读
- google-maps - Google Places API 不会返回您在 UI 搜索中获得的概览
- ssh - 与 VTune Amplifier 的多级 SSH 连接
- excel - Excel,Vba 宏将形状“移动”到不同的形状,无需复制和粘贴
- swift - 在 IF 语句中使用未解析的标识符
- swift - 如何从 NSDictionary swift 4 获取关键数据
- android-studio - robotium:只使用 android studio 进行一项测试
- ios - 如何[以编程方式]将图像添加到现有 tableView 的单元格?
- c - 打印星形或“X”图案
- python - import numpy 导致 Python 在 NumPy 版本 1.16.0 及更高版本中崩溃
- swift - Swift 协议中默认参数的替代方案