我正在尝试打开一个受密码保护的Excel文件(版本xls,xlsx,xlsm)。我需要打开文件并从每个文件中删除密码。 我拥有要处理的文件的所有密码。
我不能使用Microsoft Interop Excel,因为必须在服务器上安装excel才能起作用。我已经在使用Aspose.Cells打开不受密码保护的文件。但是我希望能够保存文件而不用密码覆盖它。
有人有建议吗?预先感谢
到目前为止的代码
public static void RemovePassword(string filePath, string password){
LoadOptions loadOptions = new LoadOptions();
loadOptions.Password = password;
Workbook src = new Workbook(filePath, loadOptions);
//need a way of removing the password from the file.
}
答案 0 :(得分:2)
您可以使用工作簿的Unprotect方法:
LoadOptions loadOptions = new LoadOptions();
loadOptions.Password = password;
Workbook workbook = new Workbook(filePath, loadOptions);
workbook.Unprotect(password);
// or workbook.Settings.Password = "";
workbook.Save(filePath);
答案 1 :(得分:0)
感谢您的回答,我注意到您的第一个建议只会保护工作簿结构。
workbook.Unprotect(password);
就我而言,我想解密受密码保护(加密)的实际文件
第二条建议非常感谢!
workbook.Settings.Password = "";
workbook.Save(filePath);
再次感谢您的帮助