Excel管理控件Aspose.Cells开发者指南(一):打开文件的不同方法

Aspose.Cells for .NET是Excel电子表格编程API,可加快电子表格管理和处理任务,支持构建具有生成,修改,转换,呈现和打印电子表格功能的跨平台应用程序。在接下来的系列教程中,将为开发者带来Aspose.Cells for .NET的一系列使用教程,例如关于加载保存转换、字体、渲染、绘图、智能标记等等。

Aspose.Cells for .NET是Excel电子表格编程API,可加快电子表格管理和处理任务,支持构建具有生成,修改,转换,呈现和打印电子表格功能的跨平台应用程序。

【下载体验Aspose.Cells for .NET最新版】

在接下来的系列教程中,将为开发者带来Aspose.Cells for .NET的一系列使用教程,例如关于加载保存转换、字体、渲染、绘图、智能标记等等。

第一章:加载,保存,转换和管理

▲第一节:打开文件的不同方法

通过路径打开文件


开发人员可以在本地计算机上使用其文件路径打开Microsoft Excel文件,方法是在Workbook类构造函数中指定它。只需在构造函数中传递路径即可string。Aspose.Cells将自动检测文件格式类型。

// 文档目录的路径。string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);            //通过路径打开//创建工作簿对象并使用其文件路径打开Excel文件Workbook workbook1 = new Workbook(dataDir + "Book1.xlsx");Console.WriteLine("Workbook opened using path successfully!");

使用流打开文件

可以将Excel文件作为流打开。为此,请使用构造函数的重载版本,该构造函数采用Stream包含该文件的对象。

//文档目录的路径。string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);//开通过流//创建一个流对象FileStream fstream = new FileStream(dataDir + "Book2.xls", FileMode.Open);//创建工作簿对象时,从流对象打开文件//包含文件的内容,它应该支持搜索Workbook workbook2 = new Workbook(fstream);Console.WriteLine("Workbook opened using stream successfully!");fstream.Close();

仅使用数据打开文件

要仅使用数据打开文件,请使用LoadOptions和LoadDataOption类,设置要加载的模板文件的类的相关属性和选项。

//文档目录的路径。string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);//仅加载包含数据和公式的特定工作表//将丢弃其他对象,项目等//实例化LoadFormat指定的LoadOptionsLoadOptions loadOptions = new LoadOptions(LoadFormat.Xlsx);//设置LoadFilter属性以仅加载数据和单元格格式loadOptions.LoadFilter = new LoadFilter(LoadDataFilterOptions.CellData);            //创建一个Workbook对象并从其路径中打开该文件Workbook book = new Workbook(dataDir + "Book1.xlsx", loadOptions);Console.WriteLine("File data imported successfully!");

仅加载可见表格

Workbook有时加载时,您可能只需要工作簿中可见工作表中的数据。Aspose.Cells允许您在加载工作簿时跳过不可见工作表中的数据。该类LoadDataOptions提供了一个OnlyVisibleWorksheet允许我们跳过不可见表格的属性。将加载工作表,但所有单元格值将保留null。

//文档目录的路径。string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);string sampleFile = "output.xlsx";string samplePath = dataDir + sampleFile;//创建一个示例工作簿//并将一些数据放入所有3张表格的第一个单元格中Workbook createWorkbook = new Workbook();createWorkbook.Worksheets["Sheet1"].Cells["A1"].Value = "Aspose";createWorkbook.Worksheets.Add("Sheet2").Cells["A1"].Value = "Aspose";createWorkbook.Worksheets.Add("Sheet3").Cells["A1"].Value = "Aspose";createWorkbook.Worksheets["Sheet3"].IsVisible = false;createWorkbook.Save(samplePath);//加载示例工作簿           LoadOptions loadOptions = new LoadOptions();loadOptions.LoadFilter = new CustomLoad();Workbook loadWorkbook = new Workbook(samplePath, loadOptions);Console.WriteLine("Sheet1: A1: {0}", loadWorkbook.Worksheets["Sheet1"].Cells["A1"].Value);Console.WriteLine("Sheet1: A2: {0}", loadWorkbook.Worksheets["Sheet2"].Cells["A1"].Value);Console.WriteLine("Sheet1: A3: {0}", loadWorkbook.Worksheets["Sheet3"].Cells["A1"].Value);

下面是上面代码片段中引用的CustomnLoad类的实现。

class CustomLoad : LoadFilter{    public override void StartSheet(Worksheet sheet)    {        if (sheet.IsVisible)        {            // Load everything from visible worksheet            this.LoadDataFilterOptions = LoadDataFilterOptions.All;        }        else        {            // Load nothing            this.LoadDataFilterOptions = LoadDataFilterOptions.None;        }    }}

*想要购买Aspose.PDF for .NET正版授权的朋友可以联系在线客服了解详情哦~

欢迎加入ASPOSE技术交流QQ群,各类资源及时分享,技术问题交流讨论!(扫描下方二维码加入群聊)

1560231367164.png

1565166511625_12201A8E-ADC2-4723-A4C7-A25BEBC0575B(1).png

标签:

来源:慧都

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年7月6日
下一篇 2019年7月6日

相关推荐

发表回复

登录后才能评论