本文继续介绍Gox语言中如何利用内置的github.com/360EntSecGroup-Skylar/excelize包来实现Excel文件的操作,例子中演示的是如何将Excel文件自动转换为CSV格式的文件。CSV文件其实是一种固定格式的纯文本文件,比较方便一般的计算机程序化处理。例子代码可以对含有单表或者多表的Excel文件进行转换,多表的情况下会将各个表分别保存为按数字排序的多个CSV文件,这比在Excel文件中手动另存为CSV文件时要方便得多。另外,稍加改进后,还可以批量进行Excel文件的转换。
下面就是这段代码,非常简单,也有详尽的注释。
// 设置github.com/360EntSecGroup-Skylar/excelize包的简称
excel = github_360EntSecGroupSkylar_excelize
// 从命令行获取要转换的Excel文件名
fileNameT = getParameter(argsG, 1, "")
if fileNameT == "" {
pl("not enough parameters")
exit()
}
// 打开该Excel文件
f, errT = excel.OpenFile(fileNameT)
checkError(errT)
// 获取文件内所有的表(sheet)
// 结果是一个[]string字符串数组,里面是各个表的名称
sheets = f.GetSheetList()
// 获取表的个数
lenT = len(sheets)
// 如果只有一个表,则转换为原文件名+“.csv”的新文件名
if lenT <= 1 {
// 获取第一个表中所有的内容(行列)
rowsT, errT = f.GetRows(sheets[0])
checkError(errT)
// 获取第一