none
string.format RRS feed

  • Question

  • salut tout le monde

    je voudrais ajouter à ma bibliothéque de classe une spécification du format des variables de différents type (string,int,double) en utilisant string.format, mais j'ai pas pu bien comprendre comment écrire le code équivalent ,j'ai lu pas mal d'article mais ce que j'ai retenu c'est qu'il faut spécifier le format exactement comme ceci:

    String.Format("{0:00000}", 15);          // "00015"

    mais moi j'ai beaucoup de varialbles qui ont different format , je ne peux pas spécifier à chaque variable sa taille et son format dans la bibliothéque de classe , s'il vous plait j'ai besoin de vos aides.

    merci d'avance 

    mardi 25 mai 2010 08:56

Réponses

  • Bonjour,

    Vous pouvez aussi utiliser une fonction qui converti vos spécificateurs de format vers ceux de .NET. Voici un début de code :

    public static string MonFormatVersFormatDotNet(string format)
    {
      Regex r;
      Match m;
    
      r = new Regex("([0-9]*)([a])");
      m = r.Match(format);
    
      if (m.Groups[2].Value == "a")
      {
        // Caractère alphanumérique
        return "{0:" + m.Groups[1].Value + "}";
      }
    
      return null;
    }

    Cordialement


    Gilles TOURREAU - MVP C# - MCP - Architecte .NET/Consultant/Formateur - http://gilles.tourreau.fr
    • Marqué comme réponse Alex Petrescu vendredi 28 mai 2010 08:44
    mercredi 26 mai 2010 21:34
    Modérateur

Toutes les réponses

  • Bonjour,

    J'ai vraiment du mal à comprendre votre problème. Pouvez-vous nous dire la fonction que vous recherchez à faire exactement (au moins ses paramètres ?).

    Cordialement


    Gilles TOURREAU - MVP C# - MCP - Architecte .NET/Consultant/Formateur - http://gilles.tourreau.fr
    mardi 25 mai 2010 09:33
    Modérateur
  • bon voila , j'ai un tableau qui contient plusieurs code chaque et aussi le format et la taille de la valeur de chaque code, donc il faut que je converti cette format et taille à un format valable , plus précisement:

    code 1 :un alphanumérique de 10 caractère (10a)

    code 2 :un nombre de 6 chiffre(6n)

    ..................

    cette spécification de 10a et 6n et d'autre ,il faut les signaler par format reconu et valable .

    tout ça doit etre dans une bibliotéque de classe qui va etre utilisé pour plusieurs tableau.

    j'espère bien de ne pas etre ennuyeuse

    merci beaucoup  

    mardi 25 mai 2010 09:43
  • Bonjour,

     

    Si vous avez des spécificateurs de format qui n’ont aucune correspondance avec les spécificateurs .NET, vous devez créer votre propre tableau de correspondance et utiliser chaque fois le spécificateur .NET approprié.

     

    Pour les spécificateurs de format, consultez cette page :

    http://msdn.microsoft.com/fr-fr/library/fht0f5be.aspx

     

    Cordialement,

    Alex

    __________________________________________________________________________________________

    Publiez un article sur une de ces technologies : Visual Basic, C#, C++, .NET, ASP.NET, SQL Server, Silverlight, SharePoint 2010, SharePoint 2007

     

    Astuces pour Visual Studio 2010

    Didacticiels et astuces : VB.NET, C#, ASP.NET, .NET Framework

     

     

    mercredi 26 mai 2010 13:02
  • Bonjour,

    Vous pouvez aussi utiliser une fonction qui converti vos spécificateurs de format vers ceux de .NET. Voici un début de code :

    public static string MonFormatVersFormatDotNet(string format)
    {
      Regex r;
      Match m;
    
      r = new Regex("([0-9]*)([a])");
      m = r.Match(format);
    
      if (m.Groups[2].Value == "a")
      {
        // Caractère alphanumérique
        return "{0:" + m.Groups[1].Value + "}";
      }
    
      return null;
    }

    Cordialement


    Gilles TOURREAU - MVP C# - MCP - Architecte .NET/Consultant/Formateur - http://gilles.tourreau.fr
    • Marqué comme réponse Alex Petrescu vendredi 28 mai 2010 08:44
    mercredi 26 mai 2010 21:34
    Modérateur