Salut à tous !
Parce que dans les jaws que je connais ça n'existe pas, je vous propose
aujourd'hui des fonctions de lecture et d'écriture dans des fichiers qui
utilisent pour ce faire le fileSystemObject.
Les voici:
Début du code jawsscript
String Function ReadFileContent (string FilePath)
; lit le contenu d'un fichier
var
object fso, object txtfile, object ts,
string s
let fso=CreateObject("Scripting.FileSystemObject")
let txtfile =fso.GetFile(FilePath)
let ts=txtfile.OpenAsTextStream
; lecture
let s=ts.ReadAll
ts.Close
; libérations
let ts=Null ()
let txtfile=Null ()
let fso=Null ()
; renvoi
return s
EndFunction
Int Function WriteFileContent (string FilePath, string sText)
; écrit dans un fichier
var
object fso, object txtfile
let fso = CreateObject("Scripting.FileSystemObject")
let txtfile =fso.GetFile(FilePath, -1)
if ! txtfile then ; si fichier inexistant
let txtfile = fso.CreateTextFile(FilePath, -1)
endif
if ! txtfile then return false endif
txtfile.Write (sText)
txtfile.Close
; libérations
let txtfile=Null ()
let fso=Null ()
; renvoi
return true
EndFunction
Fin du code jawsscript
Exemple d'utilisation:
Début du code jawsscript
var
string sTexte,
sttring sFichier
let sTexte = "bonjour tout le monde !"
let sFichier = "c:\\test.txt"
; on écrit le texte dans le fichier
; le fichier n'existant pas, il sera automatiquement créé.
WriteFileContent (sFichier, sTexte)
; maintenant que le fichier existe et contient un texte,
; on va le lire et faire dire son contenu.
SayString(ReadFileContent(sFichier))
Fin du code jawsscript
Pour le moment, la fonction d'écriture que je vous propose crée ou écrase un
fichier déja existant, sans possibilité de simple ajout. L'objectif d'une
future amélioration serait de le permettre via un paramètre booléen
supplémentaire à la fonction qui servirait à déterminer si on remplace ou si on
ajoute du texte dans le fichier en question.
Voilà ! Puisse cela être utile à quelqu'un.
Yannick Daniel Youalé
Du Cameroun