Excel管理控件Aspose.Cells开发者指南(二):打开具有不同格式的文件

翻译|行业资讯|编辑:李显亮|2019-08-19 10:57:20.747|阅读 30 次

概述:Aspose.Cells for .NET是Excel电子表格编程API,可加快电子表格管理和处理任务,支持构建具有生成,修改,转换,呈现和打印电子表格功能的跨平台应用程序。在接下来的系列教程中,将为开发者带来Aspose.Cells for .NET的一系列使用教程,本文是关于如何打开不同格式的文件,例如SpreadsheetML文件、HTML文件、CSV文件等。

相关链接:

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

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

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

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

▲第二节:打开具有不同格式的文件

Aspose.Cells允许开发人员打开具有不同格式的电子表格文件,例如SpreadsheetML,逗号分隔值(CSV),制表符分隔符或制表符分隔值(TSV),ODS文件。要打开此类文件,开发人员可以使用与打开不同Microsoft Excel版本文件相同的方法。

打开SpreadsheetML文件


SpreadsheetML文件是电子表格的XML表示形式,包括有关它的所有信息,例如格式,公式等。自Microsoft Excel XP起,XML导出选项被添加到Microsoft Excel,用于将电子表格导出到SpreadsheetML文件。

//文档目录的路径。
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
 //打开SpreadsheetML文件
//实例化LoadFormat指定的LoadOptions。
LoadOptions loadOptions3 = new LoadOptions(LoadFormat.SpreadsheetML);

//创建一个Workbook对象并从其路径中打开该文件
Workbook wbSpreadSheetML = new Workbook(dataDir + "Book3.xml", loadOptions3);
Console.WriteLine("SpreadSheetML file opened successfully!");


打开HTML文件

Aspose.Cells允许将HTML文件打开到Workbook对象中。HTML文件应该面向Microsoft Excel,即MS-Excel能够打开它。

//文档目录的路径。
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);


string filePath = dataDir + "Book1.html";

//实例化LoadFormat指定的LoadOptions。
HTMLLoadOptions loadOptions = new HTMLLoadOptions(LoadFormat.Html);

//创建一个Workbook对象并从其路径中打开该文件
Workbook wb = new Workbook(filePath, loadOptions);
//保存MHT文件
wb.Save(filePath + "output.xlsx");


打开CSV文件

逗号分隔值(CSV)文件包含值以逗号分隔的记录。数据存储为表格,其中每列由逗号字符分隔,并由双引号字符引用。如果字段值包含双引号字符,则使用一对双引号字符进行转义。同时还可以使用Microsoft Excel将电子表格数据导出为CSV。

//文档目录的路径。
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);

//实例化LoadFormat指定的LoadOptions。
LoadOptions loadOptions4 = new LoadOptions(LoadFormat.CSV);

//创建一个Workbook对象并从其路径中打开该文件
Workbook wbCSV = new Workbook(dataDir + "Book_CSV.csv", loadOptions4);
Console.WriteLine("CSV file opened successfully!");
打开CSV文件并替换无效字符

在Excel中,当打开包含特殊字符的CSV文件时,将自动替换字符。Aspose.Cells API也是如此,下面是演示示例:

//源目录
string sourceDir = RunExamples.Get_SourceDirectory();
            
var filename = sourceDir + "[20180220142533][ASPOSE_CELLS_TEST].csv";

//加载CSV文件
var workbook = new Workbook(filename, new TxtLoadOptions() { Separator = ';', LoadFilter = new LoadFilter(LoadDataFilterOptions.CellData), CheckExcelRestriction = false, ConvertNumericData = false, ConvertDateTimeData = false });

Console.WriteLine(workbook.Worksheets[0].Name); // (20180220142533)(ASPOSE_CELLS_T
Console.WriteLine(workbook.Worksheets[0].Name.Length); // 31
Console.WriteLine("CSV file opened successfully!");


使用自定义分隔符打开文本文件

文本文件用于保存电子表格数据而不进行格式化。该文件是一种纯文本文件,可以有一些自定义分隔符。

//文档目录的路径。
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
string filePath = dataDir + "Book11.csv";

//实例化文本文件的LoadOptions
TxtLoadOptions txtLoadOptions = new TxtLoadOptions();

//指定分隔符
txtLoadOptions.Separator = Convert.ToChar(",");

//指定编码类型
txtLoadOptions.Encoding = System.Text.Encoding.UTF8;

//创建一个Workbook对象并从其路径中打开该文件
Workbook wb = new Workbook(filePath, txtLoadOptions);

//保存文件
wb.Save(dataDir+ "output.txt");


打开制表符分隔文件

制表符分隔(文本)文件包含电子表格数据,但没有任何格式。数据按行和列排列,如表格和电子表格。基本上,制表符分隔文件是一种特殊的纯文本文件,每列之间都有一个制表符。

//文档目录的路径。
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
            
 //打开制表符分隔文件
//实例化LoadFormat指定的LoadOptions。
LoadOptions loadOptions5 = new LoadOptions(LoadFormat.TabDelimited);

//创建一个Workbook对象并从其路径中打开该文件
Workbook wbTabDelimited = new Workbook(dataDir + "Book1TabDelimited.txt", loadOptions5);
Console.WriteLine("Tab delimited file opened successfully!");


打开制表符分隔值(TSV)文件

表符分隔值(TSV)文件包含电子表格数据,但没有任何格式。与制表符分隔文件相同,其中数据按表和电子表格中的行和列排列。

//源目录
string sourceDir = RunExamples.Get_SourceDirectory();

//实例化LoadFormat指定的LoadOptions。
LoadOptions loadOptions = new LoadOptions(LoadFormat.TSV);

//创建一个Workbook对象并从其路径中打开该文件
Workbook workbook = new Workbook(sourceDir + "SampleTSVFile.tsv", loadOptions);

//使用工作簿中的工作表1
Worksheet worksheet = workbook.Worksheets[0];

// 使用名称访问单元格
Cell cell = worksheet.Cells["C3"];

Console.WriteLine("Cell Name: " + cell.Name + " Value: " + cell.StringValue);


打开SXC文件

StarOffice Calc与Microsoft Excel类似,支持公式,图表,函数和宏。使用此软件创建的电子表格随SXC 扩展名一起保存。SXC 文件 也用于OpenOffice.org Calc电子表格 文件。Aspose.Cells可以读取SXC文件,如以下代码示例所示。

//源目录
string sourceDir = RunExamples.Get_SourceDirectory();

//实例化LoadFormat指定的LoadOptions。
LoadOptions loadOptions = new LoadOptions(LoadFormat.SXC);

//创建一个Workbook对象并从其路径中打开该文件
Workbook workbook = new Workbook(sourceDir + "SampleSXC.sxc", loadOptions);

//使用工作簿中的工作表1
Worksheet worksheet = workbook.Worksheets[0];

//使用名称访问单元格
Cell cell = worksheet.Cells["C3"];

Console.WriteLine("Cell Name: " + cell.Name + " Value: " + cell.StringValue);


打开FODS文件

FODS文件是保存在OpenDocument XML中的电子表格,没有任何压缩。 Aspose.Cells可以读取FODS 文件由下面的代码示例所展示的。

//源目录
string sourceDir = RunExamples.Get_SourceDirectory();

// 实例化LoadFormat指定的LoadOptions。
LoadOptions loadOptions = new LoadOptions(LoadFormat.FODS);

//创建一个Workbook对象并从其路径中打开该文件
Workbook workbook = new Workbook(sourceDir + "SampleFods.fods", loadOptions);

Console.WriteLine("FODS file opened successfully!");

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

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

1560231367164.png

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




标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果

登录 慧都网发表评论


暂无评论...

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
相关厂商
相关产品
Aspose.Cells

专业的电子表格控件,无需MS Excel也可满足一切Excel表格功能。

在线客服 在线QQ 电话咨询
400-700-1020
反馈
在线客服系统
live chat