golang 千位分隔符

时间:2023-03-09 17:42:32
golang 千位分隔符

项目需求将统计出的数字以千位分隔符分隔的形式展示(如将 1234567.89 格式化为 1,234,567.89),而 golang 的标准库中并无这样的函数。

万能的 google 找到解决办法,可参考 https://*.com/questions/13020308/how-to-fmt-printf-an-integer-with-thousands-comma

利用第三方库 golang.org/x/text/message

由于“你懂得”的原因,无法直接 go get 安装,采用git 安装,参考https://blog.****.net/qq_35191331/article/details/79655839

mkdir -p $GOPATH/src/golang.org/x
cd $GOPATH/src/golang.org/x
git clone https://github.com/golang/text.git

例子:

package main

import (
"fmt"
"golang.org/x/text/language"
"golang.org/x/text/message"
) func main() { m := 123456789.99 p := message.NewPrinter(language.English)
fmt.Println(p.Sprintf("%.2f", m)) }

执行后输出:

,,789.99