FORUMS PROFESSIONNELS
WINDEV
,
WEBDEV
et
WINDEV Mobile
Accueil
|
Messages récents
|
Connexion
|
Déconnexion
|
Français
Accueil
→
WINDEV 2024
→
Fichier externe
Fichier externe
Débuté par atrioux, 12 aoû. 2004 18:09 - 5 réponses
Connectez-vous…
atrioux
#1
Posté le 12 août 2004 - 18:09
J'ai un programme qui m'envoi en permanence (ts les secondes) des
informations dans un fichier txt
chaque info correspond a une ligne d'enregistrement
je dois a partir d'un autre programme recuperer ces infos ligne par ligne
pour les inscrire dans ma base hyperfile puis les supprimer apres
enregistrement pour eviter les doublons
pendant ce temps l'autre programme doit pouvoir continuer a enregistrer les
nouvelles infos
ma question est comment peut on lire dans un fichier externe une ligne, la
traiter puis la supprimer sans bloquer l'acces a ce fichier?
ou Comment dois je proceder au mieux?
merci
Arnaud
Signaler
0
0
#2
Posté le 12 août 2004 - 18:13
Salut !
On 12-Aug-2004, "Arnaud TRIOUX" <atrioux@horloges-huchez.fr> wrote:
J'ai un programme qui m'envoi en permanence (ts les secondes) des
informations dans un fichier txt
chaque info correspond a une ligne d'enregistrement
je dois a partir d'un autre programme recuperer ces infos ligne par ligne
pour les inscrire dans ma base hyperfile puis les supprimer apres
enregistrement pour eviter les doublons
pendant ce temps l'autre programme doit pouvoir continuer a enregistrer
les
nouvelles infos
ma question est comment peut on lire dans un fichier externe une ligne, la
traiter puis la supprimer sans bloquer l'acces a ce fichier?
ou Comment dois je proceder au mieux?
merci
Arnaud
J'ai eu à résoudre un problème du même genre ...
J'ai résolu le problème de la manière suivante.
Le premier programme écrit dans un fichier temporaire les données toutes les
secondes.
Toutes les minutes, il ferme ce fichier et le renomme avec une extension
précise, puis reprend
son petit traintrain ...
Pendant ce temps, le second programme traite les fichiers ayant l'extension
choisie et les efface après
traitement ...
Je ne sais si cela peut convenir dans ton cas ... en tout cas , chez moi, je
n'ai pas eu de problème ...
Bien à toi !
--
Marcel Berman
c/o Managing Business SPRL
Allée du Petit Paris, 11
B - 1410 - Waterloo
Tel : +32 2 351.60.64
Fax : +32 2 351.45.78
Gsm : +32 475.799.477
Signaler
0
0
f.demilly
#3
Posté le 12 août 2004 - 18:41
"Arnaud TRIOUX" <atrioux@horloges-huchez.fr> wrote:
J'ai un programme qui m'envoi en permanence (ts les secondes) des
informations dans un fichier txt
chaque info correspond a une ligne d'enregistrement
je dois a partir d'un autre programme recuperer ces infos ligne par ligne
pour les inscrire dans ma base hyperfile puis les supprimer apres
enregistrement pour eviter les doublons
pendant ce temps l'autre programme doit pouvoir continuer a enregistrer
les
nouvelles infos
ma question est comment peut on lire dans un fichier externe une ligne,
la
traiter puis la supprimer sans bloquer l'acces a ce fichier?
ou Comment dois je proceder au mieux?
merci
Arnaud
Difficile de répondre sans connaitre le fonctionnement de l'autre programme.
Une solution serait de copier le fichier, puis de supprimer l'original avant
de lire la copie. Mais il faut être sûr que le programme n'a pas modifié
le fichier entre la copie et la suppression, ce qui n'est pas évident.
Autre solution : enregistrer la position courante dans le fichier,après la
dernière lecture, et reprendre la lecture à cette position + 1. Mais il faut
alors s'assurer que le fichier n'as pas été vidé.
Frédéric.
Signaler
0
0
info
#4
Posté le 12 août 2004 - 18:42
Arnaud TRIOUX wrote:
J'ai un programme qui m'envoi en permanence (ts les secondes) des
informations dans un fichier txt
chaque info correspond a une ligne d'enregistrement
je dois a partir d'un autre programme recuperer ces infos ligne par ligne
pour les inscrire dans ma base hyperfile puis les supprimer apres
enregistrement pour eviter les doublons
pendant ce temps l'autre programme doit pouvoir continuer a enregistrer les
nouvelles infos
ma question est comment peut on lire dans un fichier externe une ligne, la
traiter puis la supprimer sans bloquer l'acces a ce fichier?
ou Comment dois je proceder au mieux?
merci
Arnaud
D'un coté le fichier est alimenté en ajout seul (fin de fichier)
de l'autre il est vidé par le haut.
D'une manière comme d'une autre, il faudra à un moment rendre possible
l'interrupption (attente) de l'alimentation de manière à assurer la
purge (renommage d'une copie purgée).
Au final un fichier HF poserait mois de pb car indiférent aux deux flux
si bien construit !
++ R&B
Signaler
0
0
laurent.systel
#5
Posté le 12 août 2004 - 20:53
Arnaud TRIOUX <atrioux@horloges-huchez.fr> a écrit:
J'ai un programme qui m'envoi en permanence (ts les secondes) des
informations dans un fichier txt
Attention au crach du disque.
A écrire toujours au même endroit, ton disque dur risque de ne pas
apprécier.
Il vaut mieux privilégier un échange d'informations différent.
Si tu peux faire cela en mémoire, par DDE, par socket ou par liaison série
je pense que tu auras moins de problème à long terme.
Il y a aussi la solution du disque virtuel en mémoire (vdisk) qui sera
peut-être la plus adaptée car le disque est vu comme un disque dur physique
et il peut être partagé en réseau.
---
Eric LAURENT
nospam.laurent.systel@wanadoo.fr
(enlever nospam.)
---
Signaler
0
0
_no_spam_aurilog
#6
Posté le 13 août 2004 - 09:33
Si le programme externe 'ferme', le fichier txt, tu as la solution de
renomer le fichier txt origine et de recreer un fichier txt vide pour la
suite.
Ensuite tu exploite tranquillement le fichier renommé que tu detruit en fin
de traitement.
"Arnaud TRIOUX" <atrioux@horloges-huchez.fr> a écrit dans le message de
news: 411b7a33@news.pcsoft.fr...
J'ai un programme qui m'envoi en permanence (ts les secondes) des
informations dans un fichier txt
chaque info correspond a une ligne d'enregistrement
je dois a partir d'un autre programme recuperer ces infos ligne par ligne
pour les inscrire dans ma base hyperfile puis les supprimer apres
enregistrement pour eviter les doublons
pendant ce temps l'autre programme doit pouvoir continuer a enregistrer
les
nouvelles infos
ma question est comment peut on lire dans un fichier externe une ligne, la
traiter puis la supprimer sans bloquer l'acces a ce fichier?
ou Comment dois je proceder au mieux?
merci
Arnaud
Signaler
0
0
→ Revenir à WINDEV 2024
WINDEV 2024
WINDEV 2024
WEBDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV Mobile 2024
WINDEV (précédentes versions)
WINDEV (précédentes versions)
WEBDEV (précédentes versions)
WEBDEV (précédentes versions)
WINDEV Mobile (précédentes versions)
WINDEV Mobile (précédentes versions)
Etats & Requêtes
Etats & Requêtes
Hors-sujet
Hors-sujet
Outils
Outils
WINDEV 26
WINDEV 2024
WINDEV 2024
WINDEV 25
WEBDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV (précédentes versions)
Français
English
Español
Portuguesa
Fermer cette fenêtre
Type de recherche
Uniquement les sujets
Tous les messages
Période de recherche
Date indifférente
Moins d'une heure
Moins de 24 heures
Moins d'une semaine
Moins d'un mois
Moins d'un an
Annuler
Aperçu de votre message
Ajouter une image
Importer une image depuis une URL
Envoyer une image depuis un fichier de votre disque
Déposez ici un fichier ou cliquez sur "Parcourir..."
ou
Annuler
0%
WLangage
SQL
XML, HTML
JAVA, Javascript
Texte