Précédent   Forum des professionnels en informatique > Environnements de développement > Autres EDI > LabVIEW
LabVIEW Forum d'entraide sur LabVIEW. Avant de poster -> FAQ LabVIEW
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/11/2011, 14h39   #1
Membre du Club
 
Inscription : mai 2006
Messages : 192
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 192
Points : 44
Points : 44
Par défaut [LV2009] Détection de la création (+nom) d'un nouveau fichier texte dans un dossier

Bonjour,

Tout est dans le titre.
Je veux détecter et lire les fichiers textes en temps réel au moment de leur création.

C'est en fait un périphérique qui crée dans C:\DATA\ un fichier texte chaque fois il effectue une nouvelle mesure. Le temps passé entre deux mesures successives est aléatoire (de quelques secondes à quelques minutes). En tout cas, il ne crée jamais deux fichier en même temps.

Donc l'idée c'est de faire un "scan" sur le dossier DATA chaque seconde par exemple, voir s'il y a un nouveau fichier texte qui vient d'être créé. Si oui, je récupère son nom et son contenu. (la lecture d'un fichier texte n'est pas mon souci).

Merci d'avance,
Super2006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/11/2011, 15h30   #2
Membre actif
 
Avatar de Nightmare Theater
 
Homme Florian
Ingénieur après-vente
Inscription : juin 2007
Messages : 123
Détails du profil
Informations personnelles :
Nom : Homme Florian
Localisation : Allemagne

Informations professionnelles :
Activité : Ingénieur après-vente
Secteur : Industrie

Informations forums :
Inscription : juin 2007
Messages : 123
Points : 155
Points : 155
Bonjour,

Danls la palette <Programming\File IO\Advanced file functions> il y a deux fonctions qui pourraient realiser ce que tu souhaites faire: File/Directory Info et List Folder.



Apres it te suffit de comparer a l'instant T la sortie 'size' de ta fonction File/Directory Info avec la valeur de 'size' a T-1. Si size(T) est superieur a size(T-1) alors tu va chercher le nom du fichier nouvellement cree grace a la fonction List Folder et son tableau de noms de fichiers (sortie 'filenames').

Cordialement.
Nightmare Theater est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/11/2011, 17h17   #3
Membre du Club
 
Inscription : mai 2006
Messages : 192
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 192
Points : 44
Points : 44
Merci Nightmare Theater.

J'ai essayé de développer un petit exemple mais j'ai pas pu réussir malheureusement

Pouvez vous s'il vous plaît me fournir un petit exemple fonctionnel ?

Merci encore une fois.
Super2006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/11/2011, 18h22   #4
Membre actif
 
Avatar de Nightmare Theater
 
Homme Florian
Ingénieur après-vente
Inscription : juin 2007
Messages : 123
Détails du profil
Informations personnelles :
Nom : Homme Florian
Localisation : Allemagne

Informations professionnelles :
Activité : Ingénieur après-vente
Secteur : Industrie

Informations forums :
Inscription : juin 2007
Messages : 123
Points : 155
Points : 155
Je verrais si je peux faire ca lundi
Nightmare Theater est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/11/2011, 18h37   #5
Membre du Club
 
Inscription : mai 2006
Messages : 192
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 192
Points : 44
Points : 44
Merci beaucoup !
Super2006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/11/2011, 09h01   #6
Membre actif
 
Avatar de Nightmare Theater
 
Homme Florian
Ingénieur après-vente
Inscription : juin 2007
Messages : 123
Détails du profil
Informations personnelles :
Nom : Homme Florian
Localisation : Allemagne

Informations professionnelles :
Activité : Ingénieur après-vente
Secteur : Industrie

Informations forums :
Inscription : juin 2007
Messages : 123
Points : 155
Points : 155
J'ai trouve un exemple analogue sur le site de la communauté:

https://decibel.ni.com/content/docs/DOC-10765

Il liste le dernier sous-dossier crée dans un dossier. Je l'ai un peu modifie pour qu'ill donne le chemin vers la dernier fichier crée. La version modifiée se trouve en pièce jointe. Il ne te reste plus qu'a empaqueter tout ca dans une boucle while cadencée selon ton désir (500ms me semble être une bonne cadence) et tout devrait fonctionner comme tu le souhaites.

Fichiers attachés
Type de fichier : zip FindMostRecentFile.zip (8,2 Ko, 10 affichages)
Nightmare Theater est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2011, 11h41   #7
Membre du Club
 
Inscription : mai 2006
Messages : 192
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 192
Points : 44
Points : 44
Merci Nightmare Theater. ça marche nickel !

Juste une petite information, ce code détecte le dernier fichier modifié. Par défaut, le fichier récemment créé ait la propriété du dernier modifié aussi, donc ça m'a résout le problème. Mais au cas où quelqu'un d'autre aura le même problème.

Super2006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2011, 16h03   #8
Membre du Club
 
Inscription : mai 2006
Messages : 192
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 192
Points : 44
Points : 44
Re Bonjour tout le monde !

Je re ouvre ce poste à cause d'un petit changement

Dans l'historique au dessus, j'ai réussi, grâce à vous, à avoir le Nom du dernier fichier créé dans un dossier connu.

Maintenant, j'aimerai avoir le nom du dernier fichier créé et celui créé juste avant lui. Autrement, les deux derniers fichiers récemment créés dans le même dossier.

Je cliquerai deux fois sur le bouton "Résolu" une fois mon problème est résolu, promis

Merci d'avance !
A+
Super2006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2011, 11h28   #9
Membre du Club
 
Inscription : mai 2006
Messages : 192
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 192
Points : 44
Points : 44
Vous êtes tous partis en vacances ? :-(
Super2006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2011, 15h59   #10
Membre émérite
 
Avatar de reg64
 
Inscription : décembre 2006
Messages : 736
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Vienne (Poitou Charente)

Informations forums :
Inscription : décembre 2006
Messages : 736
Points : 863
Points : 863
Salut,
Ci-joint un exemple qui permet de trier par date et par ordre croissant le contenue d'un dossier (Seulement les fichiers), le résultat est donné sous forme d'un tableau 1D, tu peux donc extraire le nombre de fichier que tu souhaite.
a+

reg64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 14h30   #11
Membre du Club
 
Inscription : mai 2006
Messages : 192
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 192
Points : 44
Points : 44
Merci Reg64.

Tu me rappelle STP la démarche à faire pour ouvrir un .png en LV2009 ?

Merci d'avance.
Super2006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 14h39   #12
Membre confirmé
 
Homme
Ingénieur qualité méthodes
Inscription : avril 2010
Messages : 187
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Ingénieur qualité méthodes

Informations forums :
Inscription : avril 2010
Messages : 187
Points : 290
Points : 290
Salut,

Il faut glisser l'image directement dans ton diagramme de VI.
Personnellement, je suis obligé d'enregistrer l'image sur mon bureau car ça ne marche pas directement depuis l'explorateur.

Losaque
losaque est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 15h26   #13
Membre du Club
 
Inscription : mai 2006
Messages : 192
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 192
Points : 44
Points : 44
Oui, fallait le glisser. Merci losaque.

@Reg64, ça marche merci, mais il y a un truc qui cloche et j'arrive pas à comprendre pourquoi je n'ai pas le même ordre de création de fichier sous Windows ou en utilisant ce bout de code, sachant que j'ai mis sous Windows l'option "trier par date de création décroissante" ?!

En fait, je ne m'intéresse qu'aux fichiers texte dans mon dossier. J'aimerai récupérer donc le dernier fichier texte créé en ignorant tout autre type de fichier.

Je joins à ce poste une print-screen.

Merci d'avance,
Images attachées
Type de fichier : jpg file.JPG (47,1 Ko, 2 affichages)
Super2006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 16h33   #14
Membre émérite
 
Avatar de reg64
 
Inscription : décembre 2006
Messages : 736
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Vienne (Poitou Charente)

Informations forums :
Inscription : décembre 2006
Messages : 736
Points : 863
Points : 863
Citation:
Envoyé par Super2006 Voir le message
@Reg64, ça marche merci, mais il y a un truc qui cloche et j'arrive pas à comprendre pourquoi je n'ai pas le même ordre de création de fichier sous Windows ou en utilisant ce bout de code, sachant que j'ai mis sous Windows l'option "trier par date de création décroissante" ?!
Oops petit bug , voir exemple ci-joint

Citation:
Envoyé par Super2006 Voir le message
En fait, je ne m'intéresse qu'aux fichiers texte dans mon dossier. J'aimerai récupérer donc le dernier fichier texte créé en ignorant tout autre type de fichier.
Pour cela, il faut renseigner l'entrée Filtre du Vi Lister le contenu du dossier, en mettant *.txt
reg64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 16h42   #15
Membre du Club
 
Inscription : mai 2006
Messages : 192
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 192
Points : 44
Points : 44
Merci Reg64. Maintenant ça marche vraiment
Par contre, j'ai 2 questions s'il te plaît :

1- Et si je veux switcher entre le mode croissant / décroissant (avec bouton par exemple), comment je fais ?

2- Et si je veux récupérer uniquement le dernier fichier texte créé, comment faire pour l'extraire du tableau ?

Je vais mettre le sujet en résolu

Merci d'avance,
Super2006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 17h21   #16
Membre émérite
 
Avatar de reg64
 
Inscription : décembre 2006
Messages : 736
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Vienne (Poitou Charente)

Informations forums :
Inscription : décembre 2006
Messages : 736
Points : 863
Points : 863
De rien
Citation:
Envoyé par Super2006 Voir le message
1- Et si je veux switcher entre le mode croissant / décroissant (avec bouton par exemple), comment je fais ?
Vi Inverser un tableau 1D
Citation:
Envoyé par Super2006 Voir le message
2- Et si je veux récupérer uniquement le dernier fichier texte créé, comment faire pour l'extraire du tableau ?
Vi Indexer un tableau

a+
reg64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 17h32   #17
Membre du Club
 
Inscription : mai 2006
Messages : 192
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 192
Points : 44
Points : 44
Je dois réviser mes cours :/

Merci Reg64, bonne soirée.
Super2006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h46.


 
 
 
 
Partenaires

Hébergement Web