Excel导入导出加密码保护/加解密(Aspose.Cells方式)
Aspose.Cells.dll需要用破解版文件,请悉知。文件下载链接:https://pan.baidu.com/s/1y4oNiT4UG24wBniA25LX8g 提取码:vc68
1、文件导出
public static bool AsposeCellsExport(System.Data.DataTable dt,string filepath)
{try{if (dt == null){MessageBox.Show("数据为空");return false;}//Aspose.Cells.TxtLoadOptions lo = new TxtLoadOptions();//lo.Encoding = Encoding.Default;//中文乱码//Aspose.Cells.Workbook book = new Aspose.Cells.Workbook(filepath, lo);//打开受保护文件时,列名为乱码,可能是格式不对Aspose.Cells.Workbook book = new Aspose.Cells.Workbook(); //创建工作簿book.Settings.Password = "pwd123";Aspose.Cells.Worksheet sheet = book.Worksheets[0]; //创建工作表Cells cells = sheet.Cells; //单元格//创建样式int Colnum = dt.Columns.Count;//表格列数int Rownum = dt.Rows.Count;//表格行数//生成行 列名行for (int i = 0; i < Colnum; i++){cells[0, i].PutValue(dt.Columns[i].ColumnName); //添加表头}//生成数据行for (int i = 0; i < Rownum; i++){for (int k = 0; k < Colnum; k++){cells[1 + i, k].PutValue(dt.Rows[i][k].ToString()); //添加数据}}sheet.AutoFitColumns(); //自适应宽book.Save(filepath); //保存MessageBox.Show("Excel保存成功!!!");GC.Collect();return true;}catch (Exception e){MessageBox.Show(e.Message.ToString());return false;}
}
2、文件导入
public static System.Data.DataTable AsposeCellsImport(string filepath)
{try{System.Data.DataTable dt = new System.Data.DataTable();OpenFileDialog openFileDialog = new OpenFileDialog();openFileDialog.InitialDirectory = filepath;//注意这里写路径时要用c:\\而不是c:\openFileDialog.Filter = "Excel文件|*.xls"; // CSV文件|*.csv Excel文件|*.xlsopenFileDialog.RestoreDirectory = true;openFileDialog.FilterIndex = 1;if (openFileDialog.ShowDialog() == DialogResult.OK){LoadOptions loadOptions = new LoadOptions();loadOptions.Password = "pwd123";Aspose.Cells.Workbook wk = new Aspose.Cells.Workbook(openFileDialog.FileName,loadOptions);Aspose.Cells.Worksheet ws = wk.Worksheets[0];Cells cells = wk.Worksheets[0].Cells;//wk.Settings.Password = "pwd123";//文件密码--报错:Invalid Passwordwk.Unprotect("pwd123");if (cells.Count > 0 )dt = cells.ExportDataTable(0, 0, cells.MaxDataRow + 1, cells.MaxColumn + 1, true);//for(int i=0;i<dt.Columns.Count;i++)//{//MessageBox.Show(dt.Columns[i].ColumnName.ToString());//}//for (int k = 0; k < dt.Rows.Count; k++)//{//for (int h = 0; h < dt.Columns.Count; h++)//{//MessageBox.Show(dt.Rows[k][h].ToString());//}//}}return dt;}catch(Exception ex){MessageBox.Show(ex.Message.ToString());return null;}
}
代码通过百度经验锤炼,受得起折磨。大家可以收藏啦!
Excel导入导出加密码保护/加解密(Aspose.Cells方式)相关推荐
- 【飞秋】ASP.NET 之 常用类、方法的超级总结,并包含动态的EXCEL导入导出功能,奉上类库源码
最近闲了,花点几天时间将项目中常用的一些类.方法做了一下总结,希望对大家有用. 实用类:UtilityClass 包含如下方法 判断对象是否为空或NULL,如果是空或NULL返回true,否则返回fa ...
- easyexcel 设置标题_EasyExcel,让 excel 导入导出更加简单
做积极的人,而不是积极废人! 来源:jianshu.com/p/8f3defdc76d4EasyExcelGitHub上的官方说明快速开始maven仓库地址导入导出总结 EasyExcel 在做exc ...
- Excel导入导出帮助类
/// <summary> /// Excel导入导出帮助类 /// 记得引入 NPOI /// 下载地址 http://npoi.codeplex.com/r ...
- excel 导入导出使用poi自定义注解
excel导入导出使用poi自定义注解 最近在做一个数据导入导出的模块 在网上找了一些例子 在这里整理一下 这里就不再贴原作者的地址 (以下代码来自网上非原创 稍作简单修改) 首先引入pom.xm ...
- easyexcel 在 设置标题_EasyExcel,让excel导入导出更加简单
EasyExcel 在做excel导入导出的时候,发现项目中封装的工具类及其难用,于是去gitHub上找了一些相关的框架,最终选定了EasyExcel.之前早有听闻该框架,但是一直没有去了解,这次借此 ...
- 开发指南专题十五 JEECG微云快速开发平台EXCEL导入导出
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 开 ...
- Excel导入导出工具类
目录 1.mavn jar 2 工具类代码 2.1 ExcelUtil 2.2 引用自写类 2.2.1 ExcelMsg 2.2.2 CellDataType 2.2.3 SaxReadExcelUt ...
- Java操作大数据量Excel导入导出万能工具类(完整版)
Java操作大数据量Excel导入导出万能工具类(完整版) 转载自:https://blog.csdn.net/JavaWebRookie/article/details/80843653 更新日志: ...
- Java操作百万数据量Excel导入导出工具类(程序代码教程)
Java操作百万数据量Excel导入导出工具类(程序代码教程): # 功能实现1.自定义导入数据格式,支持配置时间.小数点类型(支持单/多sheet)(2种方式:本地文件路径导入(只支持xls.xls ...
最新文章
- win cmd rmdir /s递归删除目录
- java如何恢复视图_Java - 如何用reformation+Moshi创建回收站视图_java_酷徒编程知识库...
- 服务器电源控制芯片,服务器电源中的PFC控制芯片HA16141的应用.pdf
- 从零实现深度学习框架——N-Gram语言模型(二)
- CentOS7与CentOS6区别及特点
- Postman Mock Server 使用
- mrpoid模拟器java版_mrpoid模拟器2019下载
- 使用matlab制作电子签名
- 史上最全源码安装ROS-BUG解决集合2:在树莓派4B上安装Raspbian Bluster aarch64系统 + ROS-Melodic
- selenium: 网页打开最大化
- vue中axios的post请求url自动带上本地ip解决方法
- .Net Core学习笔记(二)MVC框架
- 工具使用 - office快捷键
- java兵临城下_CentOS6.4 64位系统安装jdk
- 英语音标 什么是音素
- JAVA swing实现简单增删改查
- 使用jQuery的click事件没反应
- redis事务java_Redis之Redis的事务
- vue父子组件赋值操作时报错Avoid mutating a prop directly since the value will be overwritten whenever
- 西安交通大学计算机组成原理第三章,西安交通大学计算机组成原理专题实验(上)第三次实验报告.pdf...