Excel管理控件Aspose.Cells开发者指南(一):打开文件的不同方法
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指定的LoadOptions LoadOptions 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群,各类资源及时分享,技术问题交流讨论!(扫描下方二维码加入群聊)