获取小数点后的位数

时间:2018-08-22 00:28:11

标签: go currency

获取货币小数点后位数的惯用方式是什么?更具体地说,based on the Wikipedia page for ISO 4217,我想要货币代码/小数点后的位数之间有以下映射:

  • 美元:2
  • 日元:0
  • 欧元:2

有没有一个图书馆可以帮我获取这些信息?

1 个答案:

答案 0 :(得分:4)

我建议您检出x/text/currency library

它具有用于在标准,现金或会计环境中获取货币应使用多少个小数的功能。例如:

currencyNames := []string{"USD", "JPY", "EUR"}
for _, currencyName := range currencyNames {
        isoCurrency := currency.MustParseISO(currencyName)
        scale , _ := currency.Standard.Rounding(isoCurrency)
        fmt.Printf("%s: %d\n", currencyName, scale)
}

礼物:

USD: 2
JPY: 0
EUR: 2

根据您希望对这些信息进行处理,该库中的某些格式化功能可能会更接近最终目标。

但是,请注意,如链接的文档页面上所述:

  

注意:格式化功能目前正在开发中,如有更改,恕不另行通知。