Bonjour, je récupère un chiffre sous form de 3584965456,60 mais je veux l'afficher dans mon report rdlc sous la form : 3.584.965.456,60
Merci
Bonjour, je récupère un chiffre sous form de 3584965456,60 mais je veux l'afficher dans mon report rdlc sous la form : 3.584.965.456,60
Merci
Bonjour,
Il existe des choses pour formater les numéros : Chaînes de format numérique
Si tu n'y trouves pas ton bonheur il y a encore les regex (je te laisse chercher, je n'y connais rien là dedant ) ou encore une procédure maison (tu créés ta fonction qui te retourne la chaîne souhaitée )
Bon courage,
ZenZiTone
merci pour vos reponse :
j'ai fais comme ca :mais ca n'a pas marché
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 dt.Rows[0]["Estimation"] = dt.Rows[0]["Estimation"].ToString().Replace(".",","); dt.Rows[0]["Estimation"] = string.Format("{0:000.000.000.000.000,00}", dt.Rows[0]["Estimation"]);
Bonjour,
Je pense que la solution de charouel est la meilleure piste, sachant que tu peux donner le format que tu veux à ta zone de texte.
Clique droit sur la zone -> propriété -> Nombre -> (si rien ne te convient) Personnalisé -> un truc comme "000.000.000.000.000,000" devrait le faire !
Bon code,
J@ck.
Pas de réponse par MP, merci.
Penser au ça fait plaisir
voila j'ai changé :
maintenant ca marche mais il me donne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part dt.Rows[0]["Conversion"] = string.Format("{0:0,0,0,0,0.00}", Convert.ToDouble(dt.Rows[0]["Estimation"]));
320654 => 320 654.00 alors que le resultat recherché c'est 320,654.00 et aussi
5000 => 05 000.00 alors que le résultat souhaité est 5,000.00
Alors tu fait comme ça
Code VB : Sélectionner tout - Visualiser dans une fenêtre à part dt.Rows[0]["Conversion"] = (string.Format("{0:0,0,0,0,0.00}", Convert.ToDouble(dt.Rows[0]["Estimation"]))).ToString().Replace(' ',',');
Pour les virgules :
Résultat : 3,584,965,456.60
Code VB.NET : Sélectionner tout - Visualiser dans une fenêtre à part Convert.ToDouble(dt.Rows[0]["Estimation"]))).ToString("N2");
Less Is More
Pensez à utiliser les boutons , et les balises code
Desole pour l'absence d'accents, clavier US oblige
Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.
pour lui l'espace entre les chiffre ce n'est pas un espace donc Replace(' ',',') ne change rien
ca ne change rien aussi (je suis sous c#)
Code : Sélectionner tout - Visualiser dans une fenêtre à part dt.Rows[0]["Conversion"] = string.Format("{0:0,0,0,0,0.00}", Convert.ToDouble(dt.Rows[0]["Estimation"]).ToString("N2"));
voila j'ai testé et ça fonctionne
mais tu dois le mettre dans une fonction
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 var str = "3584965456,60"; var tt =str.Split(',')[0]; var newnumvber = str.Split(',')[1]; int i = 3; while ( i < tt.Length) { newnumvber = tt.Substring(tt.Length - i)+ '.'+ newnumvber; tt= tt.Replace(tt.Substring(tt.Length - i), ""); } if (i > tt.Length) { newnumvber=tt+"."+newnumvber; }
C'est sûr que si tu ne cherches pas un minimum ca ne risque pas de marcher Plus besoin du string.Format :
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part dt.Rows[0]["Conversion"] = Convert.ToDouble(dt.Rows[0]["Estimation"]).ToString("N2");
Less Is More
Pensez à utiliser les boutons , et les balises code
Desole pour l'absence d'accents, clavier US oblige
Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.
Petite question : Ca ne dépend pas de la Culture ?
Dans le cas de la France, les centaines sont séparées par des espaces et les décimales par une virgule.
Et pour info, pour ceux qui se demanderaient : N veut dire Number et 2 veut dire "2 après la virgule"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 double chiffre = 2500254.539; string test = chiffre.ToString("N2", CultureInfo.GetCultureInfo("en-US").NumberFormat); // test = "2,500,254.54"
"Hope for the best, but prepare for the worst."
Oui ca dépend de la culture, c'est vrai que je ne l'ai pas précisé
On peut switcher le thread sur une culture US et revenir sur la culture par défaut une fois la conversion effectuée.
Less Is More
Pensez à utiliser les boutons , et les balises code
Desole pour l'absence d'accents, clavier US oblige
Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager