首页 > 其他分享 >使用excelize把xlsx转换为yaml

使用excelize把xlsx转换为yaml

时间:2023-03-30 09:44:45浏览次数:36  
标签:xlsx err excelize fmt yaml Exit os

package main

import (
    "fmt"
    "github.com/360EntSecGroup-Skylar/excelize/v2"
    "gopkg.in/yaml.v2"
    "io/ioutil"
    "os"
)

func main() {
    xlsx, err := excelize.OpenFile("Book1.xlsx")
    if err != nil {
        fmt.Println(err)
        os.Exit(1)
    }
    rows, err := xlsx.GetRows("Sheet1")
    if err != nil {
        fmt.Println(err)
        os.Exit(1)
    }
    var data []map[string]string
    for i, row := range rows {
        if i == 0 {
            continue
        }
        item := make(map[string]string)
        for j, colCell := range row {
            item[xlsx.GetCellValue("Sheet1", fmt.Sprintf("%s%d", excelize.ToAlphaString(j+1), i))] = colCell
        }
        data = append(data, item)
    }
    ymlData, err := yaml.Marshal(&data)
    if err != nil {
        fmt.Println(err)
        os.Exit(1)
    }
    err = ioutil.WriteFile("Book1.yml", ymlData, 0644)
    if err != nil {
        fmt.Println(err)
        os.Exit(1)
    }
}

标签:xlsx,err,excelize,fmt,yaml,Exit,os
From: https://www.cnblogs.com/iXiAo9/p/17271409.html

相关文章

  • 认识yaml文件
    认识yaml文件yaml文件语法大小写敏感使用缩进表示层级关系缩进时不允许使用Tab键,只允许使用空格。缩进的空格数目不重要,只要相同层级的元素左侧对齐即可#表示注释,......
  • Qt QXlsx(访问Excel)
    再Qt中已经有了QAxObject来访问Excel,但访问的是微软的com,只能访问正版的Excl中的.xls//xlsx,而且使用起来及其不方便(本人亲测)。在这里使用QXlsx,能更简单的访问Excel数......
  • Qt QXlsx基本使用
     1、概述QXlsx是一个可以读写Excel文件的库。不依赖office以及wps组件,可以在Qt5支持的任何平台上使用;使用方式:1.QXlsx可以编译为静态库库使用(可以提升项目编译速度......
  • js- xlsx使用过程中遇到的问题
    导入--EXCEL1.引入js<scriptsrc="https://github.com/SheetJS/sheetjs/blob/github/dist/xlsx.full.min.js"></script>2定义上传input<inputclass="position-ab......
  • vue2前端导出带背景色表格 xlsx xlsx-style
    vue2+elmentui+xlsx10.0.0+xlsx-style坑有点多。xlsx10.0.0以后的版本用require导入或者使用什么导入什么,不要import*xlsx全部导入,不然jszip组件报错找不到。配......
  • pytest + yaml 框架 -21.int类型和数字类型的str相互转换
    前言在yaml文件中定义变量的时候,如果是纯数字的值,默认是数字类型,加上引号可以变成字符串类型。对于取值结果,我们还可以使用python内置的函数去转换环境要求Python......
  • 获取下载的xlsx和xls文件内容
    importrequestsfromioimport*importopenpyxlimportxlrdsess=requests.session()defget_xls_download_cont(download_content,sheet_index=0):wb......
  • Python pyyaml报错:TypeError load() missing 1 required positional argument ‘Loade
    直接开门见山,一个小报错。报错:ERROR-load()missing1requiredpositionalargument:'Loader'报错行:config=yaml.load(f)报错原因:......
  • day05-2-yaml
    yaml1.yaml介绍YAML是"YAMLAin'taMarkupLanguage"(YAML不是一种标记语言)的递归缩写。在开发这种语言时,YAML的意思其实是:"YetAnotherMarkupLanguage"(仍是一种标记......
  • k8s(Kubernetes)中yaml文件的各种 kind 类型
    k8syaml中文件内容一般有kind类型之分,每种类型有不同的功能(一般用---符号隔开)常见的kind类型1、EndpointsEndpoints可以把外部的链接到k8s系统中(可以理解为引用外部资......