作为背景,我正在使用com.jexcel.util.ExcelAdapter对通过 jasperreports 生成的 Excel 文件进行密码保护。这目前在 Windows 中执行时工作得很好,但现在当我在 linux 服务器中执行我的 java 代码时导致错误。
它说 :
java.io.IOException: Cannot run program "cmd": java.io.IOException: error=2, No such file or directory
at java.lang.ProcessBuilder.start(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at com.jexcel.util.ExcelAdapter.setPasswordXlsFile(ExcelAdapter.java:65)
请帮忙。我正在使用 linux konsole 执行我的代码java -jar PassProtect.jar
我找到了这些链接:
使用 apache poi 创建受密码保护的 excel 文件?
两人都说Apache POI和JExcel Api都没有传递保护现有 excel 文件的功能(他们所能做的就是写保护 excel 工作表)。我已经知道这个可悲的事实。:(
com.jexcel.util.ExcelAdapter实际上为我做了诀窍,它确实可以通过保护整个工作簿(因此,如果您不需要在 linux 服务器上执行代码,请尝试使用它,因为这只有效在窗户上)。这就是问题所在,我需要在 linux 中执行我的代码,如上所述,ExcelUtil 无法为我做到这一点。你知道任何类似于 ExcelUtil 但可以在 linux 上运行的东西吗?
我不能使用像Aspose这样的商业软件。我也不能将文件保存在受密码保护的 zip 文件中,因为我需要将 excel 文件传输到 ftp 服务器,而且我需要通过电子邮件发送,如果我将其存储在 zip 文件中,这是不可能的(是吗?我无法发送或传输 zip 文件本身,因为收件人会期待 .xls 文件)。
请帮我。是否有任何方法或任何 API 或任何示例代码可以密码保护 linux 接受的文件?到目前为止,我的想法已经用完了(搜索结果都在说同样的事情)。