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

modood · 2017-07-12 07:24:16 · 5946 次点击 · 大约8小时之前 开始浏览    置顶
这是一个创建于 2017-07-12 07:24:16 的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

项目 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     │
└───────────┴──────────┴──────────────────┘

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

5946 次点击  
加入收藏 微博
3 回复  |  直到 2020-09-30 17:05:05
channel
channel · #1 · 8年之前

支持

xiguaZM
xiguaZM · #2 · 5年之前

有中文,错位很严重

tongleils
tongleils · #3 · 4年之前

如果中文能对齐就棒棒哒了

添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传