weixin_42951306 2024-08-22 16:22 采纳率: 0%
浏览 32

NPOI怎么打开及保存加密的03版xls

打开时试过网上说的方法:Biff8EncryptionKey.CurrentPassword="密码",但是报错Implement it based on poi 4.2 in the future
NPOI都没有实现方法,网上为啥有人可以呢?
求解答,感谢

  • 写回答

2条回答 默认 最新

  • 吃不了席 2024-08-22 17:03
    关注

    以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

    您好,NPOI确实没有实现打开加密的03版xls文件的功能。但是,您可以使用第三方库EPPlus来实现这个功能。以下是使用EPPlus打开和保存加密的03版xls文件的示例代码:

    using OfficeOpenXml;
    using System.IO;
    
    // 打开加密的03版xls文件
    string filePath = "your_encrypted_file_path.xls";
    string password = "your_password";
    FileInfo fileInfo = new FileInfo(filePath);
    ExcelPackage.LicenseContext = LicenseContext.NonCommercial; // 设置许可证上下文
    using (ExcelPackage package = new ExcelPackage(fileInfo, password))
    {
        ExcelWorksheet worksheet = package.Workbook.Worksheets[1]; // 获取第一个工作表
        // 读取单元格数据等操作
    }
    
    // 保存加密的03版xls文件
    string outputFilePath = "your_output_file_path.xls";
    using (ExcelPackage package = new ExcelPackage())
    {
        ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("Sheet1"); // 添加一个工作表
        // 写入单元格数据等操作
        package.SaveAs(new FileInfo(outputFilePath), password); // 保存并加密文件
    }
    

    请注意,EPPlus是一个商业软件,需要购买许可证才能在商业项目中使用。如果您需要在非商业项目中使用,可以考虑使用其他开源库,如NPOI或DotNetCore.NPOI。

    评论

报告相同问题?

问题事件

  • 创建了问题 8月22日