DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Fonctions standard / Fonctions de gestion des chaînes
  • Plage de conversion
  • Fonction Val et Unicode
  • Divers
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Renvoie la valeur numérique d'une chaîne de caractères. Il est ainsi possible d'effectuer des calculs numériques sur des chaînes de caractères.
Remarque : Cette fonction est identique à la fonction ChaîneVersNumérique.
Exemple
Val("143")    // Renvoie 143
Val("1.67")   // Renvoie 1.67
Val("ABC")    // Renvoie 0
Val("3plus2") // Renvoie 3
Val("7,5")    // Renvoie 7
Val("1D2")    // Renvoie 100
Val("2.5e-2") // Renvoie 0.025
Syntaxe
<Résultat> = Val(<Chaîne initiale> [, <Base utilisée>])
<Résultat> : Réel ou entier
  • Valeur numérique de la chaîne.
  • "inf" (pour "infini"), si le résultat dépasse les capacités d'un réel. Il est conseillé d'utiliser la conversion vers une variable de type Entier.
  • 0 en cas d'erreur.
AndroidWidget AndroidJava Dans cette version, <Résultat> correspond à un réel.
<Chaîne initiale> : Chaîne de caractères ou Buffer
Chaîne de caractères à convertir en valeur numérique.
Pour un réel, le séparateur doit être le point '.' et les préfixes de notation scientifique peuvent être 'E', 'e', 'D' ou 'd'. Si le séparateur est une virgule, les chiffres présents après la virgule ne seront pas pris en compte.
Ce paramètre peut également être un buffer. Dans ce cas, le traitement du buffer varie en fonction de l'option sélectionnée dans l'onglet "Unicode" de la description de la configuration :
  • si l'option "Utiliser des chaines ANSI en exécution" est sélectionnée, le buffer sera traité comme une chaîne ANSI.
  • si l'option "Utiliser des chaînes UNICODE en exécution" est sélectionnée, le buffer sera traité comme une chaîne ANSI ou Unicode selon son contenu.
<Base utilisée> : Chaîne de caractères ou entier (optionnel)
Base dans laquelle est représenté le chiffre. Les valeurs possibles sont les suivantes :
  • "d" : base 10 (décimal),
  • "x" : base 16 (hexadécimal),
  • "o" : base 8 (octal),
  • un entier compris entre 2 et 36.
Par défaut, la base 10 est utilisée.
WEBDEV - Code NavigateurUniversal Windows 10 App Ce paramètre n'est pas disponible. La base 10 est automatiquement utilisée.
Remarques

Plage de conversion

La conversion d'une chaîne en entier avec la fonction Val est réalisée si la valeur est comprise entre -9.223.372.036.854.775.808 et 9.223.372.036.854.775.807.

Fonction Val et Unicode

Le paramètre <Chaîne initiale> peut être au format ANSI ou au format Unicode.
Pour plus de détails sur l'Unicode, consultez Gestion de l'Unicode.

Divers

Dès qu'un caractère de <Chaîne initiale> ne peut pas constituer un nombre, la fonction Val arrête d'interpréter <Chaîne initiale> et retourne le nombre correspondant aux caractères déjà lus.
Les réels ne sont convertibles qu'à partir de la base 10. Dans les autres bases, les caractères situés après le "." (point) ne seront pas pris en compte.
Liste des exemples associés :
La fonction Val Exemples unitaires (WINDEV) : La fonction Val
[ + ] Utilisation de la fonction WLangage "Val" avec des bases différentes.
Par exemple, elle vous permet de récupérer la valeur décimale d'une chaîne au format Hexadécimal.
Classification Métier / UI : Code neutre
Composante : wd300vm.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
0 ou erreur ?
Et si la chaîne initiale est "0", comment faire la différence avec une erreur ?
J'insiste ...
Pucpood
13 sep. 2023

Dernière modification : 04/09/2024

Signaler une erreur ou faire une suggestion | Aide en ligne locale