Je suis nouveau dans la programmation C #. Quelqu'un peut-il expliquer le code suivant:
Console.WriteLine( "{0}{1,10}", "Face", "Frequency" ); //Headings
Console.WriteLine( "{0,4}{1,10}",someval,anotherval);
Je comprends que cela imprime deux colonnes de valeurs avec les en-têtes donnés, et {0}
fait référence au premier argument donné. Mais quelle est la signification des chaînes de format du formulaire {x,y}
?
Il ajoute un rembourrage à gauche. La feuille de triche suivante est très utile pour se souvenir des différents modèles de formatage de chaîne:
Les valeurs positives ajoutent du rembourrage à gauche, négatives ajoutent du rembourrage à droite
Exemple Génère String.Format ("[{0, 10}]", "Foo"); [Oo Foo] String.Format ("[{0, 5}]", "Foo"); [∙∙ Foo] String.Format ("[{0, -5}]", "Foo"); [Foo ∙∙] String.Format ("[{0, -10}]", "Foo"); [Foo ∙∙∙∙∙∙∙]
Quand tu vois {x,y}
, x
représente l'index de l'argument et y
l'alignement, comme spécifié ici . La syntaxe complète est la suivante:
{index[,alignment][:formatString]}
Il s'agit d'une valeur de remplissage ... si l'argument n'est pas la longueur spécifiée, il place des espaces.
Par exemple. si vous aviez {0,10} et que l'argument pour {0} était "Blah", la valeur réelle imprimée serait "Blah<SPACE><SPACE><SPACE><SPACE><SPACE><SPACE>"
... Blah, avec 6 espaces supplémentaires pour constituer une chaîne de 10 longueurs
ps - je ne sais pas comment mettre les espaces réels dans ... besoin de chercher SO faq sans doute