DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Syntaxe WLangage / Types du WLangage
  • Valeur par défaut
  • Adaptation au format Ansi/Unicode
  • Chaîne ANSI
  • Chaîne Unicode
  • Différents types de chaînes de caractères
  • Attribut d'extension
  • Notes
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
Le type Chaîne permet de manipuler des chaînes de caractères. Ce type de variable est une chaîne de taille dynamique.
Le type "chaîne" est propre au WLangage. Avec ce type, il n'est pas nécessaire de déclarer la longueur de la chaîne. Celle-ci peut varier de façon libre lors de l'utilisation de la variable.
Le type Chaîne est un type nullable. Pour plus de détails, consultez Activation des types nullables.
Remarques :
  • Le type Buffer est également disponible. Ce type correspond à une zone mémoire binaire. Il permet d'écrire un code portable entre WINDEV et WINDEV Mobile en ce qui concerne la manipulation des données brutes.
  • Pour une variable de type Chaîne, la fonction TypeVar renvoie la constante wlChaîne (valeur 16).
  • Le contenu d'une variable de type Chaîne peut correspondre à une chaîne simple monoligne, une chaîne multiligne ou une chaîne construite dynamiquement incluant des variables. Pour plus de détails, consultez Chaînes littérales.
Exemple
Prénom est une chaîne
Prénom = "Florence"
Syntaxe

Déclarer et initialiser une variable de type "Chaîne" Masquer les détails

<Nom de la variable> est une chaîne [ANSI] [Unicode] = <Valeur>
OU

<Nom de la variable> est une chaîne [ANSI] [Unicode]
<Nom de la variable> = <Valeur>
<Nom de la variable> :
Nom de la variable à déclarer. Lorsque plusieurs variables du même type sont déclarées et initialisées sur la même ligne, seule la dernière variable est initialisée.
<ANSI> : Optionnel
Permet d'indiquer que la chaîne est une chaîne de caractères ANSI. Si ce paramètre n'est pas spécifié, le format de la chaîne de caractères s'adaptera au format défini pour la plateforme. Pour plus de détails, consultez le paragraphe Adaptation au format Ansi/Unicode.
<Unicode> : Optionnel
Permet d'indiquer que la chaîne est une chaîne de caractères Unicode. Si ce paramètre n'est pas spécifié, le format de la chaîne de caractères s'adaptera au format défini pour la plateforme. Pour plus de détails, consultez le paragraphe Adaptation au format Ansi/Unicode.
<Valeur> :
Valeur donnée à la variable.
Remarques

Valeur par défaut

Une variable de type "Chaîne" déclarée et non initialisée correspond à une chaîne vide ("").

Adaptation au format Ansi/Unicode

  • WEBDEV - Code Serveur Si la configuration courante utilise les chaînes ANSI en exécution, les variables de type Chaîne seront des chaînes ANSI (fonctionnement par défaut).
  • WEBDEV - Code Serveur Si la configuration courante utilise les chaînes Unicode en exécution, les variables de type Chaîne seront des chaînes Unicode.
  • WEBDEV - Code Navigateur Ce type de chaîne de caractères est au format Unicode.
Rappel : Pour modifier la gestion des chaînes de caractères dans la configuration courante :
  1. Affichez la fenêtre de description du projet : sous le volet "Projet", dans le groupe "Projet", cliquez sur "Description".
  2. Dans l'onglet "Projet", cliquez sur le bouton "Description de la configuration courante".
  3. Dans la fenêtre qui s'affiche, affichez l'onglet "Unicode" et choisissez le mode voulu.

Chaîne ANSI

Chaîne de taille dynamique contenant uniquement des caractères au format ANSI. Ce format est notamment nécessaire pour manipuler :
  • les fichiers XML,
  • les fichiers RTF,
  • les fichiers PDF,
  • les fonctions utilisant le format UTF8, etc.

Chaîne Unicode

Chaîne de taille dynamique contenant uniquement des caractères au format Unicode.
WEBDEV - Code Serveur Dans une configuration utilisant des chaînes ANSI en exécution, ce type de chaîne de caractères peut être renvoyé par la fonction AnsiVersUnicode ou par une des fonctions de manipulation des chaînes Unicode.
Pour plus de détails, consultez Gestion de l'Unicode.
WEBDEV - Code Serveur Ce type de chaîne de caractères est utilisé par défaut si la configuration courante utilise les chaînes Unicode en exécution.
WEBDEV - Code Navigateur Ce type de chaîne de caractères n'est pas supporté. Il est remplacé par le type Chaîne.
PHP Ce type de chaîne de caractères n'est pas géré.

Différents types de chaînes de caractères

Le WLangage propose également les types de chaînes suivants :

Attribut d'extension <indétectable>

L'attribut d'extension <indétectable> permet d'obfusquer la valeur stockée en mémoire d'une chaîne de caractères (par exemple lors d'un Dump mémoire d'un exécutable).
Par défaut (si l'attribut d'extension <indétectable> n'est pas précisé), tous les caractères affectés à une variable de type Chaîne sont visibles lors d'un Dump mémoire de l'exécutable. Ces caractères sont visibles parmi toutes les informations présentes dans le dump : il n'est pas possible d'identifier le début et la fin de la chaîne, et aucun moyen ne permet d'identifier à quoi correspond cette chaîne.

L'attribut <indétectable> permet d'obfusquer la valeur stockée en mémoire. Les caractères visibles lors d'un Dump ne pourront identifier la valeur de la chaîne.
Cet attribut d'extension est notamment utile lors du stockage mémoire de la valeur d'un login ou d'un mot de passe, ou lors du passage d'un mot de passe à la fonction HPasse ou lors de la connexion à une base de données.
Exemple :
MaChaîneMémoire est une chaîne <indétectable>
MaChaîneMémoire = "MotDePasse"
Remarques :
  • L'utilisation de l'attribut d'extension <indétectable> peut ralentir l'application. Il est nécessaire de l'utiliser uniquement sur les variables de type chaîne le nécessitant.
  • L'attribut d'extension <indétectable> n'est pas disponible sur les chaînes de taille fixe.
Notes
Une variable de type "Chaîne" est limitée à 2 Go. Indirectement, les fonctions manipulant des chaînes de caractères sont impactées par cette limite.
Liste des exemples associés :
Divers types de chaînes Exemples unitaires (WINDEV) : Divers types de chaînes
[ + ] Utilisation des différents types de chaînes disponibles avec WINDEV.
Les spécificités de chaque type sont détaillées.
Types utilisés :
- Chaîne "standard"
- Chaîne UNICODE
- Chaîne fixe
- Chaîne Pascal
- Chaîne ASCIIZ
- Type Buffer
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 26/08/2024

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