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群,各類資源及時分享,技術問題交流討論!(掃描下方二維碼加入群聊)