前一篇文章:“使用介绍。网络操作Excel锋利工具尖顶。Xls (1)”介绍了spire.xls的基本功能和一些比较.本文将重点介绍C#操作Excel文件时Excel文件的相关设置和全局控制。因为这也是C#在读写Excel文件时经常遇到的一篇文章,也是我使用期间的一个学习步骤。本文将首先介绍Spire创建和加载文档的基本知识。XLS,以及保存文件和合并多个Excel文件的操作方法,其中我们还可以对生成的Excel文件进行更详细的设置,比如设置Excel文件的属性等。其次,在很多项目中,不仅需要生成Excel文件,还需要打印获取一些分页信息。最后介绍了用C#设置加密和保护Excel文件的方法。
1.1的创建、加载和保存。Excel文档
在我们上一篇文章的初步介绍中,有一个Hello Excel的例子,其实包含了创建和保存Excel文件的方法,非常简单。这一部分将着重于更详细地研究每个细节。
1.1保存Excel文件
不包括的文件通过Workbook的SaveToFile方法保存,有以下版本,可以根据自己的需要、文件名、Excel文件版本、文件格式进行保存。该方法的原型如下,相对简单,不做演示,将在后续文章的代码中使用。
//根据文件名、文件版本、文件格式信息保存文件public void savetofile(字符串文件名);public void SaveToFile(字符串fileName,ExcelVersion版本);public void SaveToFile(字符串文件名,文件格式文件格式);public void SaveToFile(字符串文件名,字符串分隔符);1.2不同方式加载Excel
使用C#操作Excel文件时,并不总是需要生成Excel文件报表。有时,现有数据(XML、不包括等。)需要加载进行修改,然后保存在对应的Excel文件中。加载到Excel中的方法有LoadFromFile、LoadFromStream、LoadFromXml等。的工作簿对象,方法原型如下:
//从文件加载,根据文件名、保护方式、Excel版本公开作废从文件加载(字符串文件名);public void LoadFromFile(字符串fileName,bool preserve Mode);public void LoadFromFile(字符串文件名,ExcelVersion版本);public void LoadFromFile(字符串文件名,字符串分隔符);public void LoadFromFile(字符串文件名、字符串分隔符、int行、int列);public void LoadFromFile(字符串文件名、字符串分隔符、int行、int列、ExcelVersion版本);//从数据流加载public void loadfrom stream(stream stream );public void LoadFromStream(Stream Stream,bool loadStyles公共void LoadFromStream(Stream Stream,ExcelVersion版本);//从xml文件加载public void loadfrom XML(stream stream);public void LoadFromXml(字符串FIlename);//从模板文件中加载public void loadtemplatefromfile(字符串文件名);public void LoadTemplateFromFile(字符串文件名,bool LoadStyles);2.C#设置Excel文件属性
虽然文件属性很少被普通人使用,但是有必要介绍一下。毕竟,如果文件是分布式的,就需要完整地添加相关的属性信息。Excel文件属性可以通过在文件-属性上点击右键来查看,如下图所示,我用WPS查看的Excel文件的属性,如果我用Office Excel查看的话是在右侧的。虽然显示不同,但原理是一样的:
1.由1显示的Excel属性。WPS 2。officeexcle显示的文件属性
设置Excel文件属性的方法在工作簿对象的DocumentProperties属性中,该属性是XlsBuiltInDocumentProperties类型。在spire.xls.core .试算表. collections命名空间中,也可以通过VS的对象浏览器找到其实现的一些原理,可以扩展到其他组件。看一个简单的例子:
#区域2。Excel文件属性示例静态void excelest2(){ workbook=new workbook();//修改单据属性信息,发布时可以通过单据显示公司和备案人的信息。工作簿。documentproperties.author='张三';//author workbook . document properties . subject=“测试文件属性”;//subject workbook . document properties . title=' test Excel文件';//title workbook . document properties.company=' xx有限公司';//公司工作簿. documentproperties.statements='保留文件注释';//对workbook . document properties . keywords=' test Excel ';//关键字workbook . document properties . create dtime=datetime . now;//创建时间//TODO:还有其他属性,可以参考XlsBuiltInDocumentProperties的相关属性//将Excel文件保存到指定文件,也可以指定Excel版本workbook . savetofile(' sample . xls ',excelversion . version 2007);}#endregion注意,因为我没有安装Office 2007或更高版本,用WPS显示时出现问题,只有用WPS转换到2003后才能看到。这可能是WPS的原因。调试生成的文件发现这些属性值存在。所以我没有打扰。安装一个Office真的很麻烦。
3.C#加密和保护Excel文件
相信很多人都用过Office的加密保护功能。对于Excel来说,加密保护的范围更广:不仅可以加密文件,还可以保护指定的Sheet、指定的单元格等。
3.1加密Excel文件
Excel文件级加密其实很简单,就是Workbook对象的Protect方法,加密后的密码可以传递;如果要取消密码,请使用工作簿。取消保护()。注意取消加密不需要密码,Excel软件操作也不需要密码,所以不需要程序操作。
#第三区。加密的Excel文件示例静态void excelest3(){ workbook=new workbook();工作簿。保护(' pwd 111 ');//设置密码保护加密:pwd111 //将Excel文件保存在workbook . savet file(' sample . xls ',excelversion.version2007)中;}#endregion加密并打开的文件是这样的:
3.2保护薄板和电池
工作表的保护更灵活,使用工作表对象的保护方式,传递的参数是保护密码和可选保护类型(更丰富的保护类型)。请看下面的例子:
工作簿=新工作簿();工作表=工作簿。工作表[0];//protect sheet sheet . protect(' test ',sheet protection type . all);//将Excel文件保存到workbook . savet file(' sample . xlsx ',excelversion . version 2010);达到的效果应该类似于WPS的“保护工作表”界面,如下图所示:
保护工作表的作用一般是防止误操作或版权保护不易改变的情况。我们根据情况使用。我在这里很少用,但顺便说一句,我就是知道。
静态void excelest4(){ Workbook=new Workbook();工作簿。CreateEmptySheets(1);工作表=工作簿。工作表[0];床单。范围['A1']。Text=' lock床单。范围['B1']。文本='解锁';床单。范围[' A1 ']. style . lock=true;床单。范围[' B1 ']. style . locked=false;//工作表必须受到保护才能生效。sheet.protect ('test ',sheet protection type . all);工作簿。保存文件(@'Sample_Lock.xlsx ',ExcelVersion。2010版);}今天就到这里吧。虽然都很简单,但是对以后的熟练开发有好处。这个例子很简单,上面有所有的代码。这个系列完成后,打包另一个代码。
以上就是本文的全部内容。希望对大家的学习有帮助,支持我们。