|
|
|
|
|
- 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
Chaîne (Type de variable) En anglais : String
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. 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.
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 - 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).
- Si la configuration courante utilise les chaînes Unicode en exécution, les variables de type Chaîne seront des chaînes Unicode.
- 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 : - Affichez la fenêtre de description du projet : sous le volet "Projet", dans le groupe "Projet", cliquez sur "Description".
- Dans l'onglet "Projet", cliquez sur le bouton "Description de la configuration courante".
- 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. 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.
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 :
|
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
|
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|