00:00
大家好,欢迎收看X Les基础教程的第一章第三节。在这节课中,我先向大家简单介绍一下Excel软件当中的基本概念,帮助大家能更好的理解后面的内容。然后对X兼容的文档软件做一个说明,并会将X与同类开源软件做一个简单的梳理和对比,最后会通过四个例子带领大家快速上手X Le。首先介绍一下Excel文档的基本概念,涉及到以下六个部分。首先我们先打开Excel软件。好,那现在我们所看到的就是Excel的操作界面,Excel的文件基本上都是由画面上这些小方格组成。这每一个方格我们称之为单元格。单元格可以用来输入数据或者设置公式。此外,它有一个很重要的特点,就是每个单元格都有如同地图上的坐标一样,都有一个特定的参照位置。
01:06
比如这个单元格的参照位置是第五,而这个单元格的参照位置呢,是F7。每一个Excel文件我们称之为工作部,这个文件的名称为WORKBOOK1。每一个工作簿要包含多个工作表,新建一个工作簿时呢?会创建一个默认名为SHEET1的工作表,使用exercise创建工作簿时呢,也是一样的。下面介绍一下xcel的常见扩展名。首先对于普通的工作簿的扩展名一般是XLSX,而XLSM是带有红的工作簿。XLTM是带红的模板,XLTX是Excel模板文档。下面我们介绍一下X所兼容的电子表格文档软件,除了像微软的office Excel,苹果的numbers WPS officepach open office Li office或者是Google dogs这种在线的office文档所产生的。
02:09
Excel文档都是可以通过X进行读写操作的,下面的表格梳理了主流编程语言当中部分代表电子表格文档基础库开源项目,供大家参考。接着我们就部分典型的开源软件基础库,在生成Excel文档的场景下做一个性能的基准。以下报告是基于普通个人计算机在生成50列102400行纯文本单元格下的性能表现,累计超过500万个单元格。左侧是耗时情况,右侧是内存使用情况,这里基于X less2.3.1版本,这里需要注意对于大文档流式生成的方法比普通API生成有较好的一个性能,在后面的课程当中我也会介绍如何使用这两种场景。下面介绍一下关于X的基本概念和。
03:06
版本的选择问题。我们可以通过X给我们提供的API对Excel文档进行读写操作。可以打开一个已有的工作簿,在写入一定数据后,把数据保存到原有工作簿当中,或者将该文档作为一个模板写入后另存成新的文件。对于导入和导出场景,我们可以将Excel文档当中的数据读取为我们业务中所需要的数据类型。也可以将我们业务当中的数据。按照一定模式写入到Excel文档当中进行导出。另外,XS针对于普通数据规模和大规模数据操作,提供了普通API和流式读写API2种模式。性能表现方面,我们可以访问这个官方网站链接。
04:03
然后在性能数据页面上可以查阅到每个版本X的主要API的性能表现情况。下面的表格是X对购源版本最低要求的情况,建议大家尽可能使用最新版本。接下来通过以下四个例子带大家快速上手。首先打开X官方文档网站,点击快速上手页面。复制文档中创建Excel文档的示例代码。然后打开Vs code编辑器,创建一个go文件。将刚才复制的代码粘贴到编辑器中。这里我在教程目录下创建一个第一章第三节的文件夹,然后将代码保存为卖点go。然后打开终端,运行go。In初始化模块,然后执行go tidy。
05:01
安装包依赖。接着我们执行这段程序,运行go run man。这会在当前目录下生成一个名为BOOK1的工作簿,然后我们用Excel软件打开这个工作簿,查看一下内容。下面我们对照代码来讲解一下这段程序。首先我们通过X所提供的new file方法来新建一个工作簿,获得一个F对象,然后调用new sheet方法创建一个名为SHEET2的工作表。调用完之后呢,会返回一个index变量,这代表工作表的索引,后面的程序当中会用到这个值。在创建完工作表之后呢?设置单元格的值,通过指定单元格名称和坐标,调用set cell value方法来设置单元格的值。这里我们可以看到,通过set cell value这个函数呢?我们在SHIFT1的B2单元格上设置单元格的值是100,然后设置SHEET2的A2单元格为字符串hello word,接着调用set active sheet来设置打开工作簿时的默认工作表,也就是活动工作表。
06:22
最后通过调用save方法将工作簿保存为 book1.xlsx。接下来我将演示如何读取一个已有的Excel文档,回到官方文档,复制读取文档的示例代码,粘贴到刚才的文件中,然后保存。执行该程序可以看到已经读取到了工作表中单元格的值。解释一下这段程序,首先通过X exercise提供的open file方法打开一个已有的工作簿,Get cell value可以根据指定的工作表名称和坐标读取单元格的值,Get Rose可以根据给定的工作表名称获取该工作表上全部单元格的数据。为了保证程序的可靠性,每一个API返回的可能出现的error都需要检查。
07:11
下面是一个在Excel文档中创建图表的例子,我们来创建一个像文档中这样的图表,还是复制这段示例代码覆盖粘贴到编辑器中执行该程序,然后用Excel打开生成的名为不可一的工作簿。可以看到Excel已经为我们创建了一张图表。下面我们就来看看这段程序的逻辑。首先通过声明categories和values来准备图表所需的数据。然后便利categories和values这两个变量进行图表数据源区域单元格的赋值。通过API来创建图表。这里有三个必选的参数,它们是工作表名称、单元格、坐标和图表参数。我们可以在该参数中指定图表的类型、引用的数据源区域、图表标题等等。后面在图表部分的课程会有详细的讲解。
08:16
最后通过save保存工作簿。最后一个例子是向Excel文档中插入图片。我预先在工程目录下准备好了一张图片,打开文档网站,找到插入图片的例子。复制并粘贴到编辑器中。因为我们只插入一张格式为PNG的图片,这里仅保留PNG标准库,要通过picture API向Excel文档插入图片,在这里设置好图片的坐标和图片文件的路径。另外再调整一下图片的缩放比例。0.1代表缩放到原始尺寸的10%。
09:03
将剩余两个插入其他格式图片的示例代码删除掉,最后保存并关闭文档。我们来执行一下这个程序。然后用Excel打开看一下效果。可以看到,在A5单元格上已经插入好我预先准备好的一张图片了。那么今天的课程就到这里,谢谢大家。
我来说两句