ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage functions / Standard functions / External file functions
  • Fonctionnement sous Windows Vista (et supérieur)
  • Equivalence
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Crée et remplit un fichier texte avec le contenu d'un champ texte ou d'une variable texte (variable de type chaîne, champ de saisie d'une fenêtre, champ Libellé d'un état, ...). Si le fichier existe déjà, il est supprimé, puis recréé.
Remarque : Les chaînes contenant des "0" binaires ("\0") sont supportées.
Exemple
WINDEVWEBDEV - Code ServeurEtats et RequêtesJavaCode Utilisateur (MCU)PHPAjax
// Remplit le fichier avec le contenu d'une variable
MaChaîneTexte est une chaîne = "Ceci est un test" + RC + "Utilisation de fSauveTexte"
fSauveTexte("C:\Temp\MonFichier.txt", MaChaîneTexte)
 
// Remplit le fichier avec le contenu d'un champ
// SAI_NOM_PRENOM est un champ de saisie
fSauveTexte("C:\Clients\NomPrenom.txt", SAI_NOM_PRENOM)
 
// Effectue une copie de fichier en remplaçant "Franc" par "Euro"
ContenuFichier est une chaîne
ContenuFichier = fChargeTexte("C:\Soldes\PrixFrancs.txt")
ContenuFichier = Remplace(ContenuFichier, "Franc", "Euro")
fSauveTexte("C:\Soldes\PrixEuros.txt", ContenuFichier)
Syntaxe
<Résultat> = fSauveTexte(<Nom et chemin du fichier texte> , <Contenu>)
<Résultat> : Booléen
  • Vrai si l'opération a réussi,
  • Faux dans le cas contraire. Pour connaître le libellé de l'erreur, utilisez la fonction ErreurInfo avec la constante errMessage.
<Nom et chemin du fichier texte> : Chaîne de caractères
Nom et chemin complet (ou relatif) du fichier texte à créer. Il est possible d'utiliser un chemin UNC.
WindowsLinux Ce paramètre peut être au format Ansi ou Unicode.
AndroidWidget Android Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
Rappel : Sous Android, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires, ainsi que sur la mémoire externe (SDCard).
iPhone/iPadWidget IOSMac Catalyst Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
Rappel : Sous les iPhone/iPad, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
<Contenu> : Chaîne de caractères
Chaîne constituant le contenu du fichier.
Remarques
WINDEVWEBDEV - Code ServeurEtats et RequêtesCode Utilisateur (MCU)Procédures stockées

Fonctionnement sous Windows Vista (et supérieur)

Si cette fonction ne fonctionne pas correctement sous Windows Vista (et supérieur), il est nécessaire de vérifier si le fichier ou le répertoire manipulé ne se trouve pas dans un des répertoires système (répertoire de Windows ou répertoire "Program Files").
En effet, sous Windows Vista (et supérieur), avec le mécanisme de l'UAC (contrôle des comptes utilisateurs) activé, il est nécessaire d'avoir les privilèges administrateur pour manipuler / modifier des fichiers ou des répertoires présents dans les répertoires système (répertoire de Windows ou répertoire "Program Files").
Conseil de programmation : Si vous devez manipuler / modifier des fichiers ou des répertoires, sans avoir besoin de privilèges administrateur, il est conseillé :
  • de ne pas écrire dans le répertoire de Windows ou dans le répertoire "Program Files",
  • d'utiliser le répertoire système correspondant à l'application (connu par la fonction SysRep par exemple avec la constante srAppDataCommun).
Remarque : Sous Windows Vista (ou supérieur), le mécanisme de la virtualisation permet de rendre les applications compatibles Vista. Si le fichier est créé dans un répertoire système sans avoir les droits nécessaires, ce fichier sera réellement créé dans un autre répertoire (C:\Users\<LOGIN>AppData\Local\VirtualStore\Windows\). Dans ce cas, le fichier ne pourra pas être partagé entre plusieurs applications.
WINDEVWEBDEV - Code ServeurEtats et RequêtesAndroidWidget AndroidJavaCode Utilisateur (MCU)PHPAjax

Equivalence

La fonction fSauveTexte est équivalente au code suivant :
// Ouvre le fichier en lecture
f est un entier = fOuvre("C:\MonFichier.txt", foCréation)
// Ecrit dans le fichier
ContenuFichier est une chaîne = "exemple de texte"
fEcrit(f, ContenuFichier)
// Ferme le fichier
fFerme(f)
Composante : wd290std.dll
Minimum version required
  • Version 9
Comments
Video fSaveText
https://youtu.be/ygTOfO7xjcU

https://windevdesenvolvimento.blogspot.com/2019/05/dicas-2122-windev-webdev-mobile-xml-23.html

FOR EACH ROW OF TABLE_NOTAS_MANIFESTO
IF TABLE_NOTAS_MANIFESTO.COL_11_Xml_Nota<>"" THEN
conteudo_xml is string=TABLE_NOTAS_MANIFESTO.COL_11_Xml_Nota
arquivo_nome is string="C:\TEMP\XML_"+TABLE_NOTAS_MANIFESTO.COL_02_NUMERO_NOTA+".XML"
fSaveText(arquivo_nome,conteudo_xml)
END
END

amarildo
24 May 2019
abrir,modificar,gravar e Fechar Texto
abrir,modificar,gravar e Fechar Texto

EDT_Text1=""
_arquivo is string="E:\ALEVA\TESTE\AMARILDO.TXT"
_arquivo_id is int=fOpen(_arquivo,foReadWrite)
IF _arquivo_id<>-1 THEN
slinha is string=""
LOOP
slinha=fReadLine(_arquivo_id)
IF slinha=EOT THEN
BREAK
ELSE
EDT_Text1+=slinha+CR
END
END
END
fClose(_arquivo_id)

//Salvar Arquivo

_arquivo is string="E:\ALEVA\TESTE\AMARILDO.TXT"
fSaveText(_arquivo,EDT_Text1)


//Blog com Video e exemplo
http://windevdesenvolvimento.blogspot.com.br/2016/09/curso-windev-arquivos-015-arquivos_8.html
https://www.youtube.com/watch?v=H9ZgfJ-vQ3s
De matos AMARILDO
08 Sep. 2016
Ler Tabela Cliente e Gravar Txt Mobile
Ler Tabela Cliente e Gravar Txt Mobile

//Nessa aula vou ensinar como ler tabela cliente e gravar em txt no Mobile
//This class will teach how to read and write customer table in txt in Mobile
//Cette classe vous apprendra à lire et à écrire la table des clients dans txt à Mobile

s_nome_arquivo is string=CompleteDir(fCurrentDir())+"nome_arquivo.txt"
n_arquivo is int=fCreate(s_nome_arquivo)
//ver se arquivo deu erro
IF n_arquivo=-1 THEN
Info("erro na criação arquivo",ErrorInfo())
RETURN
END
s_monta is string=""
FOR EACH ROW OF TABLE_Cliente
HReadSeekFirst(cliente,id_cliente,TABLE_Cliente.COL_Id_cliente)
s_monta+="DADOS|"
s_monta+=cliente.id_cliente+"|"
s_monta+=cliente.razao_social_nome+"|"
s_monta+=cliente.telefone+CR
END
s_monta+="FIM|"
EDT_Texto_importar=s_monta
fSaveText(s_nome_arquivo,s_monta)

//proxima aula vou ler o txt e gravar no arquivo
//next class will read the .txt and write to the file
//la classe suivante va lire le .txt et écrire dans le fichier

//Blog com Video e Exemplo
http://windevdesenvolvimento.blogspot.com.br/2016/06/windev-mobile-65-matos-pedido-20-ler.html
https://www.youtube.com/watch?v=WQa93EJSGyE
De matos AMARILDO
23 Jun. 2016

Last update: 05/25/2022

Send a report | Local help