本文使用com组件,在vs中需要对项目添加Microsoft Excel *.0 Object Library引用,我是用的版本是16.0

加密方法,参数需要 excel文件路径,输出文件保存目录(注意:目录需要已创建),加密密码

        private static void EncryptExcelFile(string inputFilePath, string outputFilePath, string password)
        {
            //打开文件
            Application app = new Application();
            Workbook workbook = app.Workbooks.Open(inputFilePath);
            //获取文件名
            string fileName = Path.GetFileName(inputFilePath);
            //设置密码
            workbook.Password = password;
            //保存到输出目录
            workbook.SaveAs(outputFilePath + fileName);
            //结尾记得关闭服务,不然会导致excel在后台开启
            workbook.Close();
            app.Quit();
        }

解密方法,参数和加密一样都是 excel文件路径,输出文件保存目录(注意:目录需要已创建),加密密码,密码用来打开excel,与加密方法比仅是打开方法有些区别,需要用密码打开,将密码设置为空,重新保存即可取消密码

        private static void DecryptExcelFile(string inputFilePath, string outputFilePath, string password)
        {
            //打开文件
            Application app = new Application();
            Workbook workbook = app.Workbooks.Open(inputFilePath, Missing.Value, false, Missing.Value, password);
            //获取文件名
            string fileName = Path.GetFileName(inputFilePath);
            //取消密码
            workbook.Password = "";
            //保存到输出目录
            workbook.SaveAs(outputFilePath + fileName);
            //结尾记得关闭服务,不然会导致excel在后台开启
            workbook.Close();
            app.Quit();
        }

 

文章信息

创建时间
2023-12-12
作者
郭铭心
是否所有人可见
所有人可见
最后修改日期
2023-12-12
点击数
270
标签