4D v16.3

TEXT TO DOCUMENT

Accueil

 
4D v16.3
TEXT TO DOCUMENT

TEXT TO DOCUMENT 


 

TEXT TO DOCUMENT ( nomFichier ; texte {; jeuCaractères {; modeRetour}} )  
Paramètre Type   Description
nomFichier  Chaîne in Nom de document ou Chemin d'accès à un document
texte  Texte in Texte à stocker dans un document
jeuCaractères  Texte, Entier long in Nom ou Numéro de jeu de caractères
modeRetour  Entier long in Mode de traitement des retours à la ligne

La commande TEXT TO DOCUMENT permet d’écrire directement le texte dans un fichier sur disque.

Passez dans nomFichier le nom ou le chemin d’accès du fichier à écrire. Si le fichier n’existe pas, il est créé. S’il existe déjà sur le disque, son contenu précédent est écrasé. Si le fichier existe mais est déjà ouvert, son contenu est verrouillé et une erreur est générée. Vous pouvez passer dans nomFichier :

  • uniquement le nom du fichier, par exemple "monFichier.txt" : dans ce cas, le fichier sera placé à côté du fichier de structure de l’application.
  • un chemin d’accès relatif au fichier de structure de l’application, par exemple "\\docs\\monFichier.txt" sous Windows ou ":docs:monFichier.txt" sous OS X.
  • un chemin d’accès absolu, par exemple "c:\\app\\docs\\monFichier.txt" sous Windows ou "MacHD:docs:monFichier.txt" sous OS X.

Si vous souhaitez permettre à l’utilisateur de désigner le nom ou l’emplacement du document, utilisez les commandes Open document ou Create document ainsi que la variable système Document.

Note : Par défaut, les documents générés par cette commande n’ont pas d’extension. Vous devez passer une extension dans nomFichier. Vous pouvez également utiliser la commande SET DOCUMENT TYPE.

Passez dans le paramètre texte le texte à écrire sur disque. Il peut s’agir d’une constante littérale ("mon texte"), d’un champ texte ou d’une variable texte 4D. 

Vous pouvez passer dans jeuCaractères le jeu de caractères à utiliser pour l’écriture du document. Vous pouvez passer une chaîne contenant le nom standard du jeu (par exemple “ISO-8859-1” ou “UTF-8”) ou son identifiant MIBEnum (entier long). Pour plus d’informations sur la liste des jeux de caractères pris en charge par 4D, reportez-vous à la description de la commande CONVERT FROM TEXT. Si une BOM (Byte Order Mark) existe pour le jeu de caractères, 4D l’insère dans le document. Si vous ne précisez pas de jeu de caractères, 4D utilise par défaut le jeu de caractères "UTF_8" et une BOM. 

Vous pouvez passer dans modeRetour un entier long indiquant le traitement à effectuer sur les caractères de fin de ligne avant de les stocker dans le fichier. Vous pouvez passer une des constantes suivantes, placées dans le thème "Documents système" :

Constante Type Valeur Comment
Document unchanged Entier long 0 Aucun traitement
Document with CR Entier long 3 Les fins de ligne sont convertis au format OS X : CR (carriage return)
Document with CRLF Entier long 2 Les fins de ligne sont convertis au format Windows : CRLF (carriage return + line feed)
Document with LF Entier long 4 Les fins de ligne sont convertis au format Unix : LF (line feed)
Document with native format Entier long 1 (Défaut) Les fins de ligne sont convertis au format natif de la plate-forme d’exécution : CR (carriage return) sous OS X, CRLF (carriage return + line feed) sous Windows

Par défaut, si le paramètre modeRetour est omis, les caractères de fin de ligne sont traités en mode natif (1).

Note : Cette commande ne modifie pas la variable OK. En cas d’échec, une erreur est générée, que vous pouvez intercepter à l’aide d’une méthode installées par la commande ON ERR CALL.

Voici des exemples type d’utilisation de cette commande :

 TEXT TO DOCUMENT("monTest.txt";"Ceci est un test")
 TEXT TO DOCUMENT("monTest.xml";"Ceci est un test")

Exemple permettant à l’utilisateur de désigner l’emplacement du fichier à créer :

 $MyTextVar:="Ceci est un test"
 ON ERR CALL("IO ERROR HANDLER")
 $vhDocRef :=Create document("")
     // Stocker le document avec l’extension ".txt"
     // Dans ce cas, l’extension .txt est toujours ajoutée au nom, il n’est pas possible de la modifier
 If(OK=1) // Si le document a bien été créé
       CLOSE DOCUMENT($vhDocRef//Refermer le document
       TEXT TO DOCUMENT(Document;$MyTextVar )
        // On écrit le document
 Else
        // Gestion d’erreur
 End if



Voir aussi  

Document to text
Documents système

 
PROPRIÉTÉS 

Produit : 4D
Thème : Documents système
Numéro : 1237

Commande(s) éligible(s) à l'exécution dans un process préemptif

 
HISTORIQUE 

Créé : 4D v14

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)