Formatage des valeurs monétaires avec Currency.Symbol in Go
Dans Go, le package golang.org/x/text/currency fournit une solution complète pour formater les valeurs monétaires. Ce package permet aux développeurs de travailler avec des codes de devises, des symboles et des informations de localisation pour formater les valeurs dans des formats lisibles par l'homme.
Voici un exemple illustrant comment utiliser la devise.Symbole pour formater une valeur monétaire :
unit, _ := currency.ParseISO("BRL")
p := message.NewPrinter(language.BrazilianPortuguese)
result := p.Sprint(currency.Symbol(unit.Amount(float64(valor) / 100)))
La sortie du code ci-dessus est "R$ 123.456,78". Cependant, si vous obtenez un format avec des points au lieu de virgules et sans séparateurs de milliers, cela est probablement dû au fait que les paramètres régionaux ou la langue appropriés n'ont pas été définis dans le message. Fonction NewPrinter.
Pour utiliser les ressources locales du système, vous peut spécifier la langue dans la fonction message.NewPrinter comme suit :
import (
"fmt"
"golang.org/x/text/currency"
"golang.org/x/text/language"
"golang.org/x/text/message"
)
func main() {
// Get the current locale
locale, err := language.Parse(language.Default())
if err != nil {
panic(err)
}
// Use the locale to create a message printer
p := message.NewPrinter(locale)
// Format the currency value using currency.Symbol
fmt.Println(p.Sprintf("%v", currency.Symbol(currency.MustParseISO("USD"), 12345678)))
}
Cette approche utilisera automatiquement les paramètres régionaux du système pour formater la valeur monétaire. Par exemple, si les paramètres régionaux du système sont définis sur « en_US », le résultat sera « $12 345 678,00 ».
En exploitant la fonction devises.Symbol en conjonction avec la fonction message.NewPrinter et la gestion appropriée des paramètres régionaux, vous pouvez formater efficacement les valeurs monétaires dans un large éventail de paramètres régionaux et de formats monétaires.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3