Partager via


Core.Printf, module (F#)

Mise en forme de style printf extensible pour les nombres et les autres types de données

Espace de noms/Chemin du module : Microsoft.FSharp.Core

Assembly : FSharp.Core (in FSharp.Core.dll)

module Printf

Notes

Les spécifications de format sont des chaînes avec des marqueurs % qui indiquent les espaces réservés de format. Les espaces réservés de format sont constitués de : %[flags][width][.precision][type] où le type est interprété comme dans le tableau suivant :

Type

Description

%b

Met en forme un bool, mis en forme comme true ou false.

%s

Met en forme une string, mise en forme comme son contenu, sans interpréter de caractères d'échappement.

%d, %i

Met en forme tout type entier de base mis en forme comme un entier décimal, signé si le type entier de base est signé.

%u

Met en forme tout type entier de base mis en forme comme un entier décimal non signé.

%x

Met en forme tout type entier de base mis en forme comme un entier hexadécimal non signé, utilisant les lettres minuscules a à f.

%X

Met en forme tout type entier de base mis en forme comme un entier hexadécimal non signé, utilisant les lettres majuscules A à F.

%o

Met en forme tout type entier de base mis en forme comme un entier octal non signé.

%e, %E, %f, %F, %g, %G

Met en forme tout type à virgule flottante de base (float, float32) mis en forme à l'aide de spécifications de format à virgule flottante de style C.

%e, %E

Met en forme une valeur signée ayant le format [-]d.dddde[sign]ddd où d correspond à un chiffre décimal unique, dddd correspond à un ou plusieurs chiffres décimaux, ddd correspond à exactement trois chiffres décimaux, et le signe est + ou -.

%f

Met en forme une valeur signée ayant le format [-]dddd.dddd, où dddd correspond à un ou plusieurs chiffres décimaux. Le nombre de chiffres avant que la virgule décimale dépend de la grandeur du nombre, et le nombre de chiffres après la virgule décimale dépend de la précision demandée.

%g, %G

Met en forme une valeur signée imprimée au format f ou e, selon celui qui est le plus compact pour la valeur et la précision données.

%M

Met en forme une valeur Decimal.

%O

Met en forme toute valeur, imprimée en effectuant un boxing de l'objet et en utilisant sa méthode ToString.

%A

Met en forme toute valeur publique, imprimée avec les paramètres de disposition par défaut. Le formulaire %+A peut être utilisé pour imprimer la valeur des données non publiques. Les types de classe et de structure affichent les mêmes qu'avec %O, que vous utilisiez %+A ou %A.

%a

Spécificateur de format général, requiert deux arguments. Le premier argument est une fonction qui accepte deux arguments : d'abord, un paramètre de contexte du type approprié pour la fonction de mise en forme donnée (par exemple, un TextWriter) et ensuite, une valeur à imprimer qui génère ou retourne le texte approprié.

Le deuxième argument est la valeur particulière à imprimer.

%t

Spécificateur de format général, requiert un argument : une fonction qui accepte un paramètre de contexte du type approprié pour la fonction de mise en forme donnée (un TextWriter) et qui génère ou retourne le texte approprié. Les types entiers de base sont byte, sbyte, int16, uint16, int32, uint32, int64, uint64, nativeint et unativeint. Les types de virgule flottante de base sont float et float32.

La largeur facultative est un entier indiquant la largeur minimale du résultat. Par exemple, %6d imprime un entier, en le préfixant avec des espaces afin de remplir 6 caractères au moins. Si la largeur est *, un argument entier supplémentaire est pris pour spécifier la largeur correspondante.

Les indicateurs valides sont décrits dans le tableau ci-après.

0

Spécifie qu'il faut ajouter des zéros plutôt que des espaces pour créer la largeur requise.

-

Spécifie qu'il faut justifier à gauche le résultat dans la largeur spécifiée.

+

Spécifie qu'il faut ajouter un signe + si le nombre est positif (pour correspondre à un signe - pour les nombres négatifs).

Lorsqu'elle est utilisée avec %A, elle spécifie d'imprimer des valeurs non publiques.

' ' (espace)

Spécifie qu'il faut ajouter un espace supplémentaire si le nombre est positif (pour correspondre à un signe - pour les nombres négatifs).

#

Non valide.

Abréviations de types

Type

Description

type BuilderFormat<'T,'Result>

Représente un format analysé statiquement associé à l'écriture dans StringBuilder. Le premier paramètre de type indique les arguments de l'opération de formatage et le dernier indique le type de retour global.

type BuilderFormat<'T>

Représente un format analysé statiquement associé à l'écriture dans un StringBuilder. Le paramètre de type indique les arguments et le type de retour de l'opération de formatage.

type StringFormat<'T,'Result>

Représente un format analysé statiquement lorsque la mise en forme génère une chaîne. Le premier paramètre de type indique les arguments de l'opération de formatage et le dernier indique le type de retour global.

type StringFormat<'T>

Représente un format analysé statiquement lorsque la mise en forme génère une chaîne. Le paramètre de type indique les arguments et le type de retour de l'opération de formatage.

type TextWriterFormat<'T,'Result>

Représente un format analysé statiquement associé à l'écriture dans TextWriter. Le premier paramètre de type indique les arguments de l'opération de formatage et le dernier indique le type de retour global.

type TextWriterFormat<'T>

Représente un format analysé statiquement associé à l'écriture dans TextWriter. Le paramètre de type indique les arguments et le type de retour de l'opération de formatage.

Valeurs

Valeur

Description

bprintf : StringBuilder -> BuilderFormat<'T> -> 'T

Imprime dans StringBuilder.

eprintf : TextWriterFormat<'T> -> 'T

Imprime la sortie mise en forme dans stderr.

eprintfn : TextWriterFormat<'T> -> 'T

Imprime la sortie mise en forme dans stderr et ajoute un saut de ligne.

failwithf : StringFormat<'T,'Result> -> 'T

Imprime dans une mémoire tampon de chaîne et lève une exception avec le résultat spécifié. Les imprimantes d'assistance doivent retourner des chaînes.

fprintf : TextWriter -> TextWriterFormat<'T> -> 'T

Imprime dans un TextWriter.

fprintfn : TextWriter -> TextWriterFormat<'T> -> 'T

Imprime dans un TextWriter, en ajoutant un saut de ligne

kbprintf : (unit -> 'Result) -> StringBuilder -> BuilderFormat<'T,'Result> -> 'T

Comme bprintf, mais appelle la fonction spécifiée pour générer le résultat. Consultez kprintf.

kfprintf : (unit -> 'Result) -> TextWriter -> TextWriterFormat<'T,'Result> -> 'T

Comme fprintf, mais appelle la fonction spécifiée pour générer le résultat. Consultez kprintf.

kprintf : (string -> 'Result) -> StringFormat<'T,'Result> -> 'T

Comme printf, mais appelle la fonction spécifiée pour générer le résultat. Par exemple, cela permet à l'impression de forcer un vidage une fois toute la sortie entrée dans le canal, mais pas avant.

ksprintf : (string -> 'Result) -> StringFormat<'T,'Result> -> 'T

Comme sprintf, mais appelle la fonction spécifiée pour générer le résultat. Consultez kprintf.

printf : TextWriterFormat<'T> -> 'T

Imprime la sortie mise en forme dans stdout.

printfn : TextWriterFormat<'T> -> 'T

Imprime la sortie mise en forme dans stdout et ajoute un saut de ligne.

sprintf : StringFormat<'T> -> 'T

Imprime dans une chaîne via une mémoire tampon de chaîne interne et retourne le résultat sous forme de chaîne. Les imprimantes d'assistance doivent retourner des chaînes.

Plateformes

Windows 7, Windows Vista SP2, Windows XP SP3, Windows XP x64 SP2, Windows Server 2008 R2, Windows Server 2008 SP2, Windows Server 2003 SP2

Informations de version

Runtime F#

Pris en charge dans : 2.0, 4.0

Silverlight

Pris en charge dans : 2, 3

Voir aussi

Référence

Microsoft.FSharp.Core, espace de noms (F#)

Historique des modifications

Date

Historique

Motif

Avril 2011

Informations ajoutées à propos de %+A.

Commentaires client.