Go 语言在命令行以表格的形式输出结构体切片

刚写的小工具,可以在命令行以表格的形式输出结构体切片

  • 表格每列自动对齐
  • 支持自动适应列宽
  • 结构体的字段支持所有数据类型(字符串,切片,映射等)

例如可以很方便清晰地将数据库查询结果列表(结构体切片)在命令行以表格的形式输出。

项目 Github 主页:https://github.com/modood/table

对你有用的话,给个 star 支持一下吧~

package main

import (
    "fmt"

    "github.com/modood/table"
)

type House struct {
    Name  string
    Sigil string
    Motto string
}

func main() {
    s := []House{
        {"Stark", "direwolf", "Winter is coming"},
        {"Targaryen", "dragon", "Fire and Blood"},
        {"Lannister", "lion", "Hear Me Roar"},
    }

    t := table.Table(s)

    fmt.Println(t)
}

输出结果:

┌───────────┬──────────┬──────────────────┐
│ Name      │ Sigil    │ Motto            │
├───────────┼──────────┼──────────────────┤
│ Stark     │ direwolf │ Winter is coming │
│ Targaryen │ dragon   │ Fire and Blood   │
│ Lannister │ lion     │ Hear Me Roar     │
└───────────┴──────────┴──────────────────┘

共 1 个回复


koolar

对齐不好处理,特别是含有汉字。

# 0