IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Formatage numerique avec 'reserve' pour le Signe


Sujet :

C#

  1. #1
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut Formatage numerique avec 'reserve' pour le Signe
    Bonjour

    C'est sans dourte un truc de débutant mais je n'ai pas trouvé de parametre de formatage pour formater une valeur numerique en reservant un espace pour les positif et afficher le '-' pour les négatifs

    Existe-t-il un 'truc' qui m'a échappé
    On bien est-on condamné a faire cela a la mano comme je le fais

  2. #2
    Expert confirmé
    Inscrit en
    Avril 2008
    Messages
    2 564
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 564
    Points : 4 442
    Points
    4 442
    Par défaut
    bonjour
    c'est traite d'office par varNombre.toString(format)...voir msdn doc...

    code exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
     
    //type decimal
    int value; 
     
    value = 12345;
    Console.WriteLine(value.ToString("D"));
    // Displays 12345
    Console.WriteLine(value.ToString("D8"));
    // Displays 00012345
     
    value = -12345;
    Console.WriteLine(value.ToString("D"));
    // Displays -12345
    Console.WriteLine(value.ToString("D8"));
    // Displays -00012345
     
    //type virgule fixe
    int integerNumber;
    integerNumber = 17843;
    Console.WriteLine(integerNumber.ToString("F", 
                      CultureInfo.InvariantCulture));
    // Displays 17843.00
     
    integerNumber = -29541;
    Console.WriteLine(integerNumber.ToString("F3", 
                      CultureInfo.InvariantCulture));
    // Displays -29541.000
     
    double doubleNumber;
    doubleNumber = 18934.1879;
    Console.WriteLine(doubleNumber.ToString("F", CultureInfo.InvariantCulture));
    // Displays 18934.19
     
    Console.WriteLine(doubleNumber.ToString("F0", CultureInfo.InvariantCulture));
    // Displays 18934
     
    doubleNumber = -1898300.1987;
    Console.WriteLine(doubleNumber.ToString("F1", CultureInfo.InvariantCulture));  
    // Displays -1898300.2
     
    Console.WriteLine(doubleNumber.ToString("F3", 
                      CultureInfo.CreateSpecificCulture("es-ES")));
    // Displays -1898300,199                        
     
     
    et autres types :general,currency...) voir
    bon code.......

  3. #3
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Merci Mabrouki

    Mais ce n'est pas si simple
    1- Mes nombres sont de type décimal
    2- Il faut que quand le signe est positif un blanc soit réservé pour rester alligné !

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Pour solutionner ton problème, tu peux utiliser le formatage à point virgule pour spécifier comment s'affiche la partie positive ou la partie négative.

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    decimal monNombre = 54.233m;
    string monNombreFormate = monNombre.ToString(" #.######;-#.######"); //Bien noter l'espace devant la partie positive.
    Tu peux trouver plus d'information ici. Il s'agit des spécifications de formatage d'un nombre à virgules. Microsoft propose même de télécharger un utilitaire pour choisir la bonne chaîne de formatage à appliquer selon ce que tu veux.

Discussions similaires

  1. Réponses: 1
    Dernier message: 18/06/2015, 19h18
  2. Réponses: 3
    Dernier message: 10/02/2010, 13h18
  3. Réponses: 1
    Dernier message: 20/01/2010, 16h45
  4. Réponses: 3
    Dernier message: 21/05/2003, 11h44
  5. Réponses: 19
    Dernier message: 24/05/2002, 16h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo