Aller au contenu principal
Version : 21 R4 BETA

Documents système

Append document ( nomFichier : Text {; typeFichier : Text} ) : Time
CLOSE DOCUMENT ( docRef : Time )
Convert path POSIX to system ( cheminPosix : Text {; *} ) : Text
Convert path system to POSIX ( cheminSystème : Text {; *} ) : Text
COPY DOCUMENT ( nomSource : Text ; nomDest : Text {; nouvNom : Text} {; *} )
CREATE ALIAS ( cheminCible : Text ; cheminAlias : Text )
Create document ( nomFichier : Text {; typeFichier : Text} ) : Time
CREATE FOLDER ( cheminAccès : Text {; *} )
DELETE DOCUMENT ( nomFichier : Text )
DELETE FOLDER ( dossier : Text {; optionSuppression : Integer} )
DOCUMENT LIST ( cheminAccès : Text ; documents : Text array {; options : Integer} )
Document to text ( nomFichier : Text {; jeuCaractères : Text, Integer {; modeRetour : Integer}} ) : Text
FOLDER LIST ( cheminAccès : Text ; dossiers : Text array )
GET DOCUMENT ICON ( cheminDoc : Text ; icône : Picture {; taille : Integer} )
Get document position ( docRef : Time ) : Real
GET DOCUMENT PROPERTIES ( nomFichier : Text ; verrouillé : Boolean ; invisible : Boolean ; créé le : Date ; créé à : Time ; modifié le : Date ; modifié à : Time )
Get document size ( document : Text, Time {; *} ) : Real
Localized document path ( cheminRelatif : Text ) : Text
MOVE DOCUMENT ( cheminSource : Text ; cheminDest : Text )
Object to path ( objetChemin : Object ) : Text
Open document ( nomFichier : Text {; typeFichier : Text}{; mode : Integer} ) : Time
Path to object ( chemin : Text {; typeChemin : Integer} ) : Object
RESOLVE ALIAS ( cheminAlias : Text ; cheminCible : Text )
Select document ( répertoire : Text, Integer ; typesFichiers : Text ; titre : Text ; options : Integer {; sélectionnés : Text array} ) : Text
Select folder : Text
Select folder ( message : Text {; répertoire : Text, Integer {; options : Integer}} ) : Text

SET DOCUMENT POSITION ( docRef : Time ; offset : Real {; ancre : Integer} )
SET DOCUMENT PROPERTIES ( nomFichier : Text ; verrouillé : Boolean ; invisible : Boolean ; créé le : Date ; créé à : Time ; modifié le : Date ; modifié à : Time )
SET DOCUMENT SIZE ( docRef : Time ; taille : Real )
SHOW ON DISK ( cheminAccès : Text {; *} )
Test path name ( cheminAccès : Text ) : Integer
TEXT TO DOCUMENT ( nomFichier : Text ; texte : Text {; jeuCaractères : Text, Integer {; modeRetour : Integer}} )
VOLUME ATTRIBUTES ( volume : Text ; taille : Real ; utilisé : Real ; libre : Real )
VOLUME LIST ( volumes : Text array )
Compatibilité

Les commandes classiques (legacy) de ce thème peuvent généralement être avantageusement remplacées par les commandes du thème Fichiers et Dossiers et leurs classes associées File, Folder, ZipFile et ZipFolder, qui vous permettent de manipuler les fichiers et les dossiers comme des objets.

Numéro de référence de document

Vous ouvrez un document avec les commandes Open document, Create document et Append document. Une fois qu'un document est ouvert, vous pouvez y lire et y écrire des caractères à l'aide de commandes telles que RECEIVE PACKET et SEND PACKET. Lorsque vous avez terminé d'utiliser le document, vous le fermez généralement à l'aide de la commande CLOSE DOCUMENT.

Tous les documents ouverts retournés par ces commandes sont désignés à l'aide d'un numéro de référence de document (DocRef). Un DocRef identifie de manière unique un document ouvert. Il s'agit formellement d'une expression de type Heure. Toutes les commandes travaillant avec des documents ouverts attendent un DocRef comme paramètre. Si vous passez un DocRef incorrect à l'une de ces commandes, une erreur du gestionnaire de fichiers se produit.

Un document ne peut être ouvert en mode lecture/écriture que par un seul process à la fois. En mode lecture seule, un process peut ouvrir plusieurs documents, plusieurs process peuvent ouvrir plusieurs documents, vous pouvez ouvrir le même document autant de fois que nécessaire, mais vous ne pouvez pas ouvrir le même document deux fois en mode lecture/écriture simultanément. Les commandes Create document et Append document ouvrent automatiquement les documents en mode lecture/écriture. Seule la commande Open document vous permet de choisir le mode d'ouverture.

note

Lorsqu'il est appelé depuis un process préemptif, un DocRef ne peut être utilisé que depuis ce process préemptif. Lorsqu'il est appelé depuis un process coopératif, un DocRef peut être utilisé depuis n'importe quel autre process coopératif.

Variable système Document

Les commandes Open document, Create document, Append document et Select document vous permettent d'accéder à un document à l'aide des boîtes de dialogue standard d'ouverture ou d'enregistrement de fichiers. Lorsque vous accédez à un document via une boîte de dialogue standard, 4D retourne le chemin d'accès complet du document dans la variable système Document. Cette variable système doit être distinguée du paramètre document qui apparaît dans la liste des paramètres des commandes.

Chemin d'accès absolu ou relatif

La plupart des routines de cette section acceptent des noms de documents, des chemins d'accès relatifs ou des chemins d'accès absolus.

  • Les chemins d'accès relatifs définissent un emplacement par rapport à un dossier situé sur le disque. Passer uniquement un nom de document est considéré comme l'utilisation d'un chemin d'accès relatif. Dans 4D, un chemin d'accès relatif est généralement exprimé par rapport au dossier du projet, c'est-à-dire le dossier contenant le fichier .project. Les chemins d'accès relatifs sont particulièrement utiles lors du déploiement d'applications dans des environnements hétérogènes.
  • Les chemins d'accès absolus définissent un emplacement par rapport à la racine du volume et ne dépendent donc pas de l'emplacement actuel du dossier du projet.

Pour déterminer si un chemin d'accès passé à une commande doit être interprété comme absolu ou relatif, 4D applique un algorithme spécifique sur chaque plate-forme.

Windows

  • Si le paramètre contient seulement deux caractères et si le second est un ':'
  • ou si le texte contient ':' et '' comme deuxième et troisième caractères,
  • ou si le texte commence par "\",
  • alors le chemin d'accès est absolu.

Dans tous les autres cas, le chemin d'accès est relatif.

Exemples avec la commande CREATE FOLDER :

CREATE FOLDER("lundi") // chemin relatif
CREATE FOLDER("\Monday") // chemin relatif
CREATE FOLDER("\Monday\Tuesday") // chemin relatif
CREATE FOLDER("c:") // chemin absolu
CREATE FOLDER("d:\Monday") // chemin absolu
CREATE FOLDER("\\srv-Internal\temp") // chemin absolu
note

L'éditeur de code de 4D permet l'utilisation de séquences d'échappement. Une séquence d'échappement commence par une barre oblique inversée \, suivie d'un caractère. Par exemple, \t est la séquence d'échappement pour le caractère Tabulation.

Le caractère \ est également utilisé comme séparateur dans les chemins d'accès sous Windows. En général, 4D interprète correctement les chemins d'accès Windows saisis dans l'éditeur de méthodes en remplaçant les barres obliques inversées simples \ par des doubles \\. Par exemple, C:\Folder deviendra C:\\Folder.

Cependant, si vous saisissez C:\MyDocuments\New, 4D affichera C:\\MyDocuments\New. Dans ce cas, le second \ est interprété à tort comme \N (une séquence d'échappement existante). Vous devez donc saisir un double \\ lorsque vous souhaitez insérer une barre oblique inversée devant un caractère utilisé dans l'une des séquences d'échappement reconnues par 4D.

macOS

  • Si le texte commence par un séparateur de dossier ':',
  • ou s'il n'en contient aucun,
  • alors le chemin d'accès est relatif.

Dans tous les autres cas, il est absolu.

Exemples avec la commande CREATE FOLDER :


CREATE FOLDER("Monday") // chemin relatif
CREATE FOLDER("macintosh hd:") // chemin absolu
CREATE FOLDER("Monday:Tuesday") // chemin absolu (un volume doit s'appeler Monday)
CREATE FOLDER(":Monday:Tuesday") // chemin relatif

Extraire le contenu d'un chemin d'accès

Vous pouvez manipuler le contenu d'un chemin d'accès à l'aide des commandes Path to object et Object to path. En particulier, à l'aide de ces commandes, vous pouvez extraire d'un chemin d'accès :

  • un nom de fichier,
  • le chemin du dossier parent,
  • l'extension du fichier ou du dossier.