Go 語言在命令列以表格的形式輸出結構體切片

modood發表於2017-08-29

最近寫的小工具,可以在命令列以表格的形式輸出結構體切片

  • 沒有第三方依賴
  • 支援中文漢字
  • 表格每列自動對齊
  • 支援自動適應列寬
  • 結構體的欄位支援所有資料型別(字串,切片,對映等)

例如可以很方便清晰地將資料庫查詢結果列表(結構體切片)在命令列以表格的形式輸出。

專案 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"},
    }

    table.Output(s)
}

輸出結果:

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

相關文章