Vấn đề với %.2f
định dạng là nó không tròn nhưng sẽ cắt cụt.
tôi đã phát triển một lớp thập phân dựa trên Int64 để xử lý số tiền đó là xử lý nổi, chuỗi phân tích cú pháp, JSON vv
Nó lưu trữ lượng như số nguyên 64 bit của cent. Có thể dễ dàng tạo ra từ phao hoặc chuyển đổi trở lại phao.
Tiện dụng để lưu trữ trong DB.
https://github.com/strongo/decimal
package example
import "github.com/strongo/decimal"
func Example() {
var amount decimal.Decimal64p2; print(amount) // 0
amount = decimal.NewDecimal64p2(0, 43); print(amount) // 0.43
amount = decimal.NewDecimal64p2(1, 43); print(amount) // 1.43
amount = decimal.NewDecimal64p2FromFloat64(23.100001); print(amount) // 23.10
amount, _ = decimal.ParseDecimal64p2("2.34"); print(amount) // 2.34
amount, _ = decimal.ParseDecimal64p2("-3.42"); print(amount) // -3.42
}
trình tốt cho ứng dụng nợ theo dõi của tôi https://debtstracker.io/
Nguồn
2017-04-05 09:01:13
Thanks for the help. Nhưng làm thế nào tôi có thể định dạng trong bản thân mẫu? Có cách nào để định dạng không?Hoặc tôi cũng phải chuyển kiểu tùy chỉnh cho mẫu với các dữ liệu khác? Hãy giúp tôi. – Bhavana
@ user29 Xem trường hợp 'n4': một số" tinh khiết "của kiểu' float64' được chuyển ('3.1415'), và nó được định dạng trong tempalte:' {{printf "% .2f" .n4}} ' . – icza
Được rồi .. Cảm ơn rất nhiều .. – Bhavana