PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

  • Propriétés WLangage utilisables avec le type File
  • Fonctions WLangage de gestion des files
  • Les files et le multithread
  • Parcours des files
  • Cas particuliers
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget iOSApple WatchCatalystUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Une variable de type File est un type structuré qui permet de regrouper une série d'éléments du même type. Les éléments sont ajoutés à la fin de la file et sont récupérés dans l'ordre d'enfilement.
Par exemple, si les éléments sont ajoutés dans l'ordre suivant : 1, 2, 3, ils seront récupérés dans le même ordre 1, 2, 3.
Versions 18 et supérieures
iPhone/iPad Ce type de variable est désormais disponible pour les applications iPhone/iPad.
Universal Windows 10 App Ce type de variable est désormais disponible en mode Windows Store apps.
Nouveauté 18
iPhone/iPad Ce type de variable est désormais disponible pour les applications iPhone/iPad.
Universal Windows 10 App Ce type de variable est désormais disponible en mode Windows Store apps.
iPhone/iPad Ce type de variable est désormais disponible pour les applications iPhone/iPad.
Universal Windows 10 App Ce type de variable est désormais disponible en mode Windows Store apps.
Versions 21 et supérieures
Universal Windows 10 App Ce type de variable est désormais disponible en mode Universal Windows 10 App.
Android Ce type de variable est désormais disponible pour les applications Android.
Widget Android Ce type de variable est désormais disponible en mode Widget Android.
WINDEVJava Ce type de variable est désormais disponible pour les applications Java.
Apple Watch Ce type de variable est désormais disponible en mode Apple Watch.
Nouveauté 21
Universal Windows 10 App Ce type de variable est désormais disponible en mode Universal Windows 10 App.
Android Ce type de variable est désormais disponible pour les applications Android.
Widget Android Ce type de variable est désormais disponible en mode Widget Android.
WINDEVJava Ce type de variable est désormais disponible pour les applications Java.
Apple Watch Ce type de variable est désormais disponible en mode Apple Watch.
Universal Windows 10 App Ce type de variable est désormais disponible en mode Universal Windows 10 App.
Android Ce type de variable est désormais disponible pour les applications Android.
Widget Android Ce type de variable est désormais disponible en mode Widget Android.
WINDEVJava Ce type de variable est désormais disponible pour les applications Java.
Apple Watch Ce type de variable est désormais disponible en mode Apple Watch.
Exemple
MaFile est une File d'entiers

// On enfile les valeurs 1, 2 et 3
Enfile(MaFile, 1)
Enfile(MaFile, 2)
Enfile(MaFile, 3)

// Affichage de la trace : 1, 2, 3
x est un entier
TANTQUE Défile(MaFile, x)
Trace(x)
FIN
Syntaxe

Déclarer et initialiser une file Masquer les détails

<Nom de la file> est [une] File de <Type des éléments de la file>
<Nom de la file> :
Nom de la variable file à déclarer.
<Type des éléments de la file> :
Type des éléments constituant la file.
Tous les types de variables peuvent être utilisés SAUF les tableaux, les tableaux associatifs, les files, les piles et les listes.
Versions 20 et supérieures
Tous les types de variables peuvent être utilisés y compris les tableaux, les tableaux associatifs, les files, les piles et les listes. Par exemple :
<variable> est une file de tableaux d'entiers

<variable> est une file de tableaux fixes de 5 entiers

<variable> est une file de tableaux associatifs d'entiers

<variable> est une file de files d'entiers

<variable> est une file de piles d'entiers

<variable> est une file de listes d'entiers
Nouveauté 20
Tous les types de variables peuvent être utilisés y compris les tableaux, les tableaux associatifs, les files, les piles et les listes. Par exemple :
<variable> est une file de tableaux d'entiers

<variable> est une file de tableaux fixes de 5 entiers

<variable> est une file de tableaux associatifs d'entiers

<variable> est une file de files d'entiers

<variable> est une file de piles d'entiers

<variable> est une file de listes d'entiers
Tous les types de variables peuvent être utilisés y compris les tableaux, les tableaux associatifs, les files, les piles et les listes. Par exemple :
<variable> est une file de tableaux d'entiers

<variable> est une file de tableaux fixes de 5 entiers

<variable> est une file de tableaux associatifs d'entiers

<variable> est une file de files d'entiers

<variable> est une file de piles d'entiers

<variable> est une file de listes d'entiers
Remarques

Propriétés WLangage utilisables avec le type File

Les propriétés suivantes peuvent être utilisées pour manipuler une variable de type File :
Nom de la propriétéEffet
AjoutTerminéRenvoie et modifie le mode d'ajout des éléments.
Cette propriété est utilisée pour la gestion du multithread.
NbThreadAttenteRenvoie le nombre de threads en attente.
Cette propriété est utilisée pour la gestion du multithread.
OccurrenceRenvoie le nombre d'occurrences de la file.
Vide
  • Vrai si la file est vide,
  • Faux dans le cas contraire.
Remarque : Ces propriétés peuvent être utilisées avec une des deux syntaxes suivantes :
  • <Nom de la variable>..<Nom de la propriété>
  • <Nom de la variable>.<Nom de la propriété>

Fonctions WLangage de gestion des files

Les fonctions suivantes peuvent être utilisées pour manipuler une variable de type File :
Versions 14 et supérieures
Défile
Nouveauté 14
Défile
Défile
Défile un élément d'une file.
Versions 10 et supérieures
Désérialise
Nouveauté 10
Désérialise
Désérialise
Désérialise un buffer ou une chaîne de caractères contenant les données d'une classe, d'une structure, d'un tableau (y compris un tableau associatif), d'une file, d'une pile, une liste ou une variable d'un type avancé et leurs sous-éléments.
Versions 14 et supérieures
Enfile
Nouveauté 14
Enfile
Enfile
Enfile un élément dans une file.
Versions 16 et supérieures
FileInfo
Nouveauté 16
FileInfo
FileInfo
Récupère les caractéristiques d’une file : types des éléments et nombre d'éléments.
Versions 10 et supérieures
Sérialise
Nouveauté 10
Sérialise
Sérialise
Transforme les éléments suivants dans un format spécifique :
  • une structure (et ses sous-éléments),
  • une classe (et ses sous-éléments),
  • un tableau (y compris les tableaux associatifs),
  • une file,
  • une pile,
  • une liste.
Versions 14 et supérieures
SupprimeTout
Nouveauté 14
SupprimeTout
SupprimeTout
Supprime tous les éléments :
  • d'un tableau WLangage à une dimension ou deux dimensions.
  • d'un tableau associatif.
  • de la propriété tableau d'un type avancé (tableau des événements de gglAgenda, ...).
  • d'une file WLangage.
  • d'une pile WLangage.
  • d'une liste WLangage.

Les files et le multithread

La gestion du multithread est prise en compte lors de l'ajout et de la suppression d'un élément (fonctions Enfile et Défile).
Il est également possible d'utiliser les propriétés lors d'une gestion multithread mais le résultat n'est pas permanent. Par exemple :
SI MaFile..Occurrence > 0 ALORS
// Quand le thread arrive ici, la file peut être vide
FIN

Parcours des files

Il est possible d'utiliser la syntaxe POUR TOUT pour parcourir les files. Les éléments sont parcourus dans l'ordre de défilement qui est également l'ordre d'enfilement.
La syntaxe utilisée correspond à celle utilisée pour les tableaux :
POUR TOUT [ELEMENT] <Variable> [, <Compteur> [, <Compteur>]] DE <File>
...
FIN
Les éléments peuvent être modifiés pendant le parcours. En cas de modification de la file pendant un parcours, les éléments parcourus seront ceux présents lors de l'initialisation du parcours :
  • si des éléments sont enfilés après l'initialisation du parcours, ils ne seront pas parcourus.
  • si des éléments sont défilés après l'initialisation du parcours, ils seront quand même parcourus.

Cas particuliers

  • Sous le débogueur, le contenu de la file est affiché dans l'ordre de défilement.
  • Une file peut être utilisée pour typer un paramètre de procédure.
  • Une file peut être copiée avec l'opérateur =. Il est également possible de copier une instance de classe ou de structure contenant une file.
  • Une file peut être initialisée par une liste d'éléments dans l'ordre d'enfilement.
Version minimum requise
  • Version 14
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire