Comprendre la syntaxe du spécificateur de format LabVIEW pour les chaînes de format qui formatent une sortie ou analysent une entrée.

Syntaxe du spécificateur de format pour les fonctions de formatage

Les fonctions de formatage utilisent la syntaxe du spécificateur de format complet :

%[$][-][+][#][^][0][Largeur][.Précision∥_Chiffres significatifs][{Unité}][<Format de temps embarqué>]Code de conversion

où

  • Largeur doit être un nombre supérieur à 0
  • Précision ou Chiffres significatifs doit être un nombre supérieur ou égal à zéro.
Remarque
  • Les doubles crochets [] indiquent les éléments facultatifs. Vous n'avez pas besoin d'inclure des caractères littéraux [] dans le spécificateur de format, sauf si un élément de syntaxe spécifique les requiert.
  • ∥ indique que si vous décidez d'utiliser .Précision ou _Chiffres significatifs, vous devez choisir l'un ou l'autre.
  • Remplacez texte dans la syntaxe par un élément de syntaxe approprié.

Syntaxe du spécificateur de format pour les fonctions de balayage

Les fonctions de balayage utilisent une syntaxe de spécification de format simplifiée :

%[Largeur]Code de conversion

où Largeur doit être un nombre supérieur à zéro.

Remarque
  • Les doubles crochets [] indiquent les éléments facultatifs. Vous n'avez pas besoin d'inclure de caractères littéraux [] dans le spécificateur de format.
  • Remplacez texte dans la syntaxe par un élément de syntaxe approprié.

Éléments de syntaxe pour les spécificateurs de format

Les spécificateurs de format supportent des éléments de syntaxe spécifiques qui définissent comment les fonctions LabVIEW interprètent les chaînes en entrée et produisent une chaîne en sortie. Comprendre la syntaxe du spécificateur de format à utiliser pour créer les chaînes en sortie dont vous avez besoin.

% Séparateur

Élément requis qui commence un spécificateur de format.

Les fonctions Formater en chaîne, Formater dans un fichier, Balayer une chaîne et Balayer un fichier sont extensibles. Ces fonctions peuvent utiliser plusieurs spécificateurs de format dans la chaîne de format, un pour chaque entrée ou sortie de la fonction.

  • Le nombre de spécificateurs de format dans la chaîne de format doit correspondre au nombre d'arguments de la fonction.
  • Pour spécifier plusieurs spécificateurs de format dans l'entrée chaîne de format, indiquez chaque spécificateur de format avec %.

Modificateurs

Utilisez des éléments de modification facultatifs pour affiner la sortie créée par une chaîne de format.

Élément de syntaxe Fonction de formatage ou de balayage Description
$ Formatage Spécifie l'ordre dans lequel afficher les variables. Entrez le chiffre qui représente l'ordre de la variable immédiatement avant ce modificateur.
- Formatage Justifie le paramètre à gauche dans sa largeur plutôt que de le justifier à droite.
+ Formatage Inclut le signe même si le nombre est positif.
^ Formatage
  • Utilisé avec les codes de conversion e ou g, formate le nombre en notation ingénieur. En notation ingénieur, l'exposant est toujours un multiple de trois.
  • Utilisé avec T, formate l'heure en temps universel.
# Formatage Supprime les zéros de fin. Si le nombre n'a pas de partie fractionnaire, ce modificateur supprime aussi la partie de description.
0 Formatage Lorsqu'il est utilisé sans le modificateur -, comble l'espace en trop à gauche d'un paramètre numérique avec des zéros plutôt qu'avec des espaces pour atteindre la largeur minimum.
Largeur
  • Formatage
  • Balayage
  • Fonction de formatage : Largeur spécifie la largeur minimale du champ de caractères de la sortie. Cette largeur n'est pas la largeur maximale. LabVIEW utilise autant de caractères que nécessaire pour formater le paramètre sans le tronquer. LabVIEW comble le champ à gauche ou à droite du paramètre par des espaces, selon la justification. Si la Largeur n'est pas précisée ou si elle est égale à 0, la longueur maximale de la sortie est seulement aussi longue que nécessaire pour contenir le paramètre d'entrée converti.
  • Fonction de balayage : Largeur spécifie la largeur maximale du champ de caractères à utiliser. LabVIEW balaye le nombre maximum de caractères lorsqu'il traite le paramètre.
.Précision ou _Chiffres significatifs Formatage Contrôle le nombre de chiffres affichés, Précision ou Chiffres significatifs étant un nombre.
Remarque Vous ne pouvez pas utiliser la précision et le nombre de chiffres significatifs ensemble dans le même spécificateur de format.
  • .Précision : Le nombre est un spécificateur de précision pour les chiffres à droite de la virgule. .Précision affecte uniquement les chiffres à droite de la virgule. .Précision a les interactions ou valeurs spéciales suivantes :
    • Notation à virgule flottante : cet élément spécifie le nombre de chiffres à droite du séparateur décimal.
    • . n ' est pas utilisé : LabVIEW utilise six chiffres de précision.
    • . est 0 : LabVIEW n ' insère pas de précision.
    • Utilisé avec les paramètres chaîne : spécifie la largeur maximale du champ balayé. LabVIEW tronque les chaînes plus longues.
  • _Chiffres significatifs : Le nombre est le nombre de chiffres significatifs à utiliser dans le format d'affichage. Affiche les données en arrondissant au nombre de chiffres que vous précisez. LabVIEW arrondit les données uniquement pour l'affichage, les données originales ne sont pas affectées. Inclut tous les chiffres sans espace. Par exemple :
    • 3,457 a 4 chiffres significatifs
    • 0,0012 a 2 chiffres significatifs
    • 123000 a 3 chiffres significatifs

    NI recommande de définir Chiffres significatifs aux valeurs suivantes, en fonction du type de nombre :

    • Nombre flottant simple précision : [1, 6]
    • Nombres à virgule flottante double précision et précision étendue : [1, 13]
{Unité} Formatage Écrase l'unité d'origine d'un VI lors de l'utilisation d'une fonction de conversion de quantité physique (valeur associée à une unité). Vous devez utiliser une unité compatible.
Remarque Vous pouvez utiliser cet élément de syntaxe uniquement avec la fonction Formater en chaîne.
<Format de temps embarqué> Formatage Contient une chaîne de format de temps à utiliser avec les codes de conversion T (temps absolu) et t (temps relatif) Pour les chaînes de format de temps embarqué valides, reportez-vous à Codes de format spécifiques au temps.

Codes de conversion

Caractères qui spécifient comment balayer ou formater un paramètre. Éléments requis pour les fonctions de balayage et de formatage.

Les codes de conversion fonctionnent principalement avec un type de données spécifique mais peuvent interpréter plusieurs types de données.

Codes de conversion pour les nombres

Code de conversion Numériques supportés Description
x
  • Entiers
  • Nombres à virgule fixe
Entier hexadécimal (par exemple, B8).
o
  • Entiers
  • Nombres à virgule fixe
Entier octal (par exemple, 701).
b
  • Entiers
  • Nombres à virgule fixe
Entier binaire (par exemple, 1011).
d
  • Entiers
  • Nombres à virgule fixe
Entier décimal signé.
u
  • Entiers
  • Nombres à virgule fixe
Entier décimal non signé.
f
  • Nombres à virgule flottante
  • Nombres à virgule fixe
Nombre à virgule flottante avec un format fractionnaire (par exemple, 12,345).
e
  • Nombres à virgule flottante
  • Nombres à virgule fixe
Nombre à virgule flottante avec une notation scientifique (par exemple, 1,234E1).
g
  • Nombres à virgule flottante
  • Nombres à virgule fixe
Formatage automatique. utilise f ou e, selon l'exposant du nombre.
  • L'exposant est supérieur à -4 ou inférieur à la précision spécifiée : utilise f
  • L'exposant est inférieur à -4 ou supérieur à la précision spécifiée : utilise e
p
  • Nombres à virgule flottante
  • Nombres à virgule fixe
nombre à virgule flottante en notation SI.
Remarque Les codes de conversion des nombres peuvent interpréter d'autres types de données comme suit :
  • Booléens : 0 représente Faux, 1 représente Vrai
  • Énums : interprète la valeur d'indice numérique de l'élément énum

Codes de conversion pour les chaînes

Code de conversion Description
s Chaîne (par exemple, abc)
  • Au cours du balayage, s, la correspondance n'a lieu que jusqu'à l'espace blanc suivant.
  • Un espace correspond à un ou plusieurs espaces blancs consécutifs. Pour balayer une chaîne qui contient éventuellement des espaces blancs, utilisez les caractères du code de conversion défini. Spécifiez tous les caractères que la chaîne est susceptible de contenir entre crochets, y compris les espaces ou autres caractères de type espaces blancs.
[ ] Caractères dans un jeu : fait correspondre une chaîne contenant uniquement les caractères spécifiés entre crochets.
Remarque Le code de conversion [ ] n'est utile que lorsque vous balayez des chaînes et non lorsque vous formatez des chaînes.

Les correspondances de caractères sont sensibles à la casse.

Les caractères suivants ont une signification particulière dans le code de conversion [ ] :

  • Spécifiez des gammes de caractères incluses dans l'ensemble : utilisez un trait d'union (-) entre les caractères qui délimitent la gamme.

    Pour faire correspondre un trait d'union littéral, désignez-le comme premier ou dernier caractère de l'ensemble.

  • Rechercher un ou plusieurs caractères spécifiés dans l'ensemble jusqu'à la première correspondance : Entrez le symbole caret ^ comme premier caractère après le crochet ouvrant [.

    Pour correspondre à un symbole caret littéral, placez le caret dans n'importe quelle autre position de l'ensemble.

Les exemples suivants démontrent l'utilisation des caractères d'un code de conversion défini :

  • %[aeiou] : Fait correspondre une chaîne contenant uniquement des voyelles minuscules.
  • %[0-9a-zA-Z ] : Fait correspondre une chaîne contenant des nombres, des lettres ou des espaces.
  • %[^,;] : Balaie une chaîne uniquement jusqu'à ce que la fonction trouve la première virgule ou le premier point-virgule.
Remarque s peut interpréter d'autres types de données comme suit :
  • Booléens : interprète Faux et Vrai
  • Énums : interprète l'étiquette chaîne de l'élément énum
  • Refnums nommés, tels que les voies DAQmx ou les noms de ressources VISA
  • Chemins

Codes de conversion pour le temps

Code de conversion Description
T Temps absolu. Utilisez T dans la propriété de Format d'affichage des commandes, constantes et indicateurs numériques ou d'horodatage, et avec les fonctions Formater en chaîne, Formater dans un fichier, Balayer une chaîne et Balayer un fichier.
Remarque Vous ne pouvez pas utiliser T avec les fonctions Tableau en chaîne au format tableur, Chaîne au format tableur en tableau, Formater une valeur et Balayer une valeur.

Si l'horodatage n'est pas formaté en temps, une erreur est renvoyée.

t Temps relatif. Utilisez t dans la propriété de Format d'affichage des commandes, constantes et indicateurs numériques ou d'horodatage, et avec les fonctions Formater en chaîne, Formater dans un fichier, Balayer une chaîne et Balayer un fichier.
Remarque Vous ne pouvez pas utiliser t avec les fonctions Tableau en chaîne au format tableur, Chaîne au format tableur en tableau, Formater une valeur et Balayer une valeur.

Si l'horodatage n'est pas formaté en temps, une erreur est renvoyée.

Remarque T peut interpréter les horodatages et les numériques. t peut interpréter uniquement les numériques.

Codes de localisation

Séquence facultative qui détermine si LabVIEW utilise un point ou une virgule pour séparer le nombre entier de la partie décimale du nombre.

Ces codes contrôlent le séparateur décimal des sorties numériques. Ces codes ne produisent aucune entrée ni sortie. Ils changent le séparateur décimal pour toutes les entrées et sorties suivantes jusqu'à ce qu'ils trouvent le prochain symbole %;.

Tableau 5. Codes de localisation pour les spécificateurs de format
Code de localisation Description
%,; Séparateur décimal virgule.
%.; Séparateur décimal point.
%; Séparateur système par défaut. Si vous ne spécifiez pas de séparateur, LabVIEW utilise le séparateur système par défaut.

Caractères littéraux

Si vous voulez ajouter des caractères à une chaîne en entrée, vous pouvez ajouter des caractères littéraux à la chaîne de format. Vous pouvez utiliser des séquences d'échappement dans des chaînes de format pour insérer certains caractères.

Tableau 6. Caractères d'échappement pour les spécificateurs de format
Séquence d'échappement Sortie Description
%% % Évitez les collisions avec le séparateur % qui définit le début d'un spécificateur de format.
\> > Évitez les collisions avec le séparateur > qui met fin au modificateur de format de temps embarqué.
Codes '\' Dépend du code à barre oblique inverse Séquence de caractères qui spécifient les valeurs hexadécimales, l'espacement, les retours arrière et autres options de formatage.

Pour en savoir plus sur les codes à barre oblique inverse, reportez-vous à Affichage des codes à barre oblique inverse ('\').

Exemples de syntaxe du spécificateur de format

Comprendre comment les spécificateurs de format LabVIEW convertissent les arguments en entrée en chaînes en sortie à l'aide d'exemples pratiques.

Exemple de formatage automatique (%g)

Argument Chaîne de format Chaîne résultante
12,00 %#g 12
12000000 %#g 1,2E+7

Si vous spécifiez #, LabVIEW supprime les zéros de fin.

Si vous spécifiez g, LabVIEW choisit une notation scientifique ou à virgule flottante suivant l'exposant du nombre à formater.

Exemple décimal (%d)

Argument Chaîne de format Chaîne résultante
12,67 score= %d%% score= 13%

Si vous spécifiez %d, LabVIEW affiche les entiers en format décimal en base 10.

  • Pour les entiers signés ou non, de n'importe quelle taille en bits, LabVIEW affiche l'entier sans le modifier.
  • LabVIEW arrondit les valeurs à virgule flottante à des entiers 64 bits signés. NaN et les valeurs supérieures à la valeur maximale d'un entier 64 bits signé sont arrondies à cette valeur maximale, 9223372036854775807. Pour enregistrer des valeurs supérieures à la valeur maximale d'un entier signé 64 bits, vous devez les adapter explicitement à des entiers 64 bits non signés en utilisant la fonction En entier quad non signé.

Exemple à virgule flottante (%f)

Argument Chaîne de format Chaîne résultante
12,67 Temp: %5.1f Temp: 12,7
12,67 N %5.3f 12,670 N
12,67 N %5.3{mN}f 12670,000 mN
12,67 N %5.3{kg}f 12,670 ?kg
  • 5 dans la chaîne de format spécifie une largeur de 5. Le nombre après . spécifie le nombre de chiffres à droite de la virgule, ou précision.
  • Les unités ne sont valides que si vous utilisez la fonction Formater en chaîne. Les exemples avec une unité montrent comment les spécificateurs de format interagissent avec les quantités physiques.
    • Vous pouvez convertir une unité en une autre.
    • Le point d'interrogation indique que l'unité du spécificateur de format est en conflit avec l'unité d'entrée

Exemple de notation scientifique (%e)

Argument Chaîne de format Chaîne résultante
12,67 %.3e 1,267E+1
12,67 %^.3e 1,2670E+0

Ajoutez ^ pour changer en notation ingénieur où l'exposant est toujours un multiple de trois.

Exemple de notation SI (%p)

Argument Chaîne de format Chaîne résultante
12000000 %.2p 12,00M
12000000 %_2p 12M
  • La valeur .2 spécifie que vous voulez une précision de deux chiffres dans la chaîne résultante.
  • Une valeur _2 spécifie que vous voulez 2 chiffres significatifs dans la chaîne résultante.
  • Le code %p ajoute les préfixes SI.

Exemple hexadécimal (%x), octal (%o) et binaire (%b)

Argument Chaîne de format Chaîne résultante
12 %02x 0C
12 %06o 000014
12 %b 1100

b (binaire) est en base 2. o (octal) est en base 8. x (hexadécimal) est en base 16.

  • Vous pouvez utiliser le modificateur - pour justifier à gauche la chaîne résultante.
  • Le modificateur 0 indique de combler la chaîne résultante avec des zéros.
  • Le chiffre dans le spécificateur de format spécifie la largeur de la chaîne résultante.

Par exemple, un modificateur -n comble la chaîne résultante avec des espaces à la largeur n.

Exemple de temps relatif (%t)

Argument Chaîne de format Chaîne résultante
91,80 %.2t 01:31.80
91,8 %<Heures:%H Minutes:%M Secondes:%S>t Heures : 00 Minutes : 01 Secondes : 31

LabVIEW formate le temps écoulé en termes suivants :

  • Semaines complètes (%W)
  • Jours complets (%D)
  • Heures complètes (%H)
  • Minutes complètes (%M)
  • Secondes complètes (%S)
  • Fractions de secondes (%chiffreu)

Pour en savoir plus sur les codes de format de temps embarqué, reportez-vous à Codes de format spécifiques au temps.

Exemple de temps absolu (%T)

Argument Chaîne de format Chaîne résultante
00:00:00.000 1/1/2001 (Temps universel) %<%.3X %x>T 17:03:28,589 31/12/2004
00:00:00.000 1/1/2001 (Temps universel) %<%Y.%m.%d>T 2001.01.01
00:00:00.000 1/1/2001 (Temps universel) %^<%.3X %x>T 06:00:00,000 31/12/2004

%T spécifie un temps absolu.

  • Toutes les informations que vous incluez dans le format de temps intégré (entre < et >) indiquent comment vous voulez formater le temps absolu. Pour en savoir plus sur les codes de format de temps embarqué, reportez-vous à Codes de format spécifiques au temps.
  • Ce formatage, ponctuation comprise, change suivant les paramètres régionaux de l'ordinateur. Le temps change en fonction du fuseau horaire configuré sur l'ordinateur.
  • Ajoutez ^ pour formater l'heure en temps universel.

Exemple de chaîne (%s)

Argument Chaîne de format Chaîne résultante
Dupont Pierre Nom : %s, %s. Nom : Dupont, Pierre.
Bonjour, Monde Chaîne : %10.6s Chaîne : Bonjour
  • %s est valide pour le formatage et le balayage. Vous pouvez utiliser %s à la fois pour les chaînes et les fichiers.
  • Dans le premier exemple, la chaîne de format utilise plusieurs spécificateurs de format. Pour obtenir ce résultat, procédez comme suit :
    • Fournissez le nom de famille (Smith) à l'entrée 1 de Formater en chaîne.
    • Développez Formater en chaîne pour ajouter une deuxième entrée en cliquant et en faisant glisser sur le bas de la fonction. Spécifiez le nom donné (John) à l'entrée 2 résultante.
    • Entrez la chaîne de format fournie. Comme la chaîne de format inclut deux séparateurs %, elle inclut deux spécificateurs de format. Le nombre de spécificateurs de format dans la chaîne de format doit correspondre au nombre d'entrées de la fonction. LabVIEW interprète les caractères qui ne font pas partie d'un spécificateur de format comme du texte littéral à ajouter à la chaîne résultante.
  • Dans le second exemple, .6 contrôle la précision de la chaîne. .6 spécifie d'utiliser au plus six caractères de la chaîne Hello, World. 10 est la largeur : LabVIEW comble la chaîne avec des espaces pour que la longueur totale de la chaîne soit égale à 10.

Exemple d'ordre des variables (%$)

Argument Chaîne de format Chaîne résultante
Dupont Pierre %2$s %1$s Pierre Dupont

Dans cet exemple, Dupont est la première variable et Pierre est la deuxième.

  • Si vous utilisez $ dans la chaîne de format pour une variable spécifique, les éléments de syntaxe subséquents qui ne sont pas précédés de $ s'appliquent à la variable suivante.
  • Pour améliorer la lisibilité lorsque vous utilisez $ pour une variable, utilisez $ pour toute autre variable de la chaîne.

Exemple de caractères de pourcentage littéral (%%)

Argument Chaîne de format Chaîne résultante
Argument vide %% %

%% n'ajoute pas de terminal aux fonctions Formater en chaîne et Balayer une chaîne.