problème fichiers texte
cindyctiti@hotmail.fr
J'ai des problèmes à réaliser mon projet d'étude.J'explique mon sujet:
j'ai deux fichiers que je dois réorganiser.Ils sont constitués de ces données:

(--- debut de passe #1 ---)
G01 X-2684.769 Y59.418 Z27.747 C178.5 F300
X-2034.993 Y42.33 F40000
X-543.033 Y3.095

-Je dois insérer une ligne entrée au clavier avant chaque ligne commençant par G**....
-je dois rechercher toutes les lignes contenant un F**
et remplacer les ** par une donnée rentrée par l'utilisateur
- et après d'autres traitements je dois prendre dans deux documents des blocs que je réassemble dans un nouveau fichier.

J'ai des problèmes pour l'algorithme.J'ai utilisé jusqu'à présent fLitLigne...

comment mettre des données d'un fichier texte sous forme de blocs?Dans les fichiers textes, je dois prendre toutes les données commençant par un "start of" et finissant par un "end of" et ainsi de suite jusqu'à la fin. Je ne sais comment faire. J'ai essayé ExtraitChaine et les chaines multilignes mais le problème c'est que je vais devoir faire plus de 200 blocs

Contribution le : 21/02/2006 09:50
Créer un fichier PDF de la contribution Imprimer


Re: problème fichiers texte
Fred
C'est quoi un bloc ?

Cordialement,

Fred

Contribution le : 21/02/2006 10:23
Créer un fichier PDF de la contribution Imprimer


Re: problème fichiers texte
Animateur WDF
Inscrit:
19/01/2004 13:48
De www.sigmasys.fr
Post(s): 988
Bonjour,

L'utilisation de flitligne est correcte.
Pour ajouter un retour chariot en début de ligne commencant par G*** et pour le remplacement des F****, il faut procéder ainsi (code tapé à la volée non vérifié):

cMaChaine est une chaine
i est un entier
ePos est un entier
cChaineF est une chaine

cMaChaine = fLitLigne(idFichier)
si cMaChaine[[1]]="G" alors
    cMaChaine = RC + cMaChaine
fin

//*** Analyse des F**** ****//
ePos = Position(cMaChaine,"F")
si ePos>0 alors
   cChaineF = ""
   //on récupère la chaine F***
   pour i=ePos à taille(cMaChaine)
       si cMaChaine[[ i ]]=" " alors
           SORTIR
       fin
       cChaineF += cMaChaine[[ i ]]
   fin
   cMaChaine = remplace(cMaChaine, cChaineF, "F" + VALEUR_SAISIE_PAR_UTILISATEUR)
fin


Bon dév.,

Totof

Contribution le : 21/02/2006 10:36
_________________
[ Totof(Christophe LOGEL) réalise des développements spécifiques WinDev (Mon annonce wdforge), http://www.sigmasys.fr]
Créer un fichier PDF de la contribution Imprimer


Re: problème fichiers texte
Anonyme
C'est un bloc de données, c'est à dire que je prends toutes les chaines de caractères ds mon fichier texte qui sont comprises entre un début de passe et une fin de passe. Voici un extrait du fichier texte:

(--- debut de passe #1 ---)
G01 G18 X-2684.769 Y59.418 Z27.747 C178.5 F5682
X-2034.993 Y42.33 F40000
X-543.033 Y3.095
X360.056 Y-20.654 Z26.981
X565.116 Y-26.047 Z27.441
X949.935 Y-36.166 Z27.747
X4575.007 Y-131.497
X4624.99 Y-132.811
X5264.768 Y-129.634 C-90. F10509
(--- fin de passe #1 ---)
G00 X4598.673 Y-112.117 Z816.
X-2019.039 Y63.013 Z27.747
(--- debut de passe #2 ---)
G01 X-2684.769 Y60.518 Z27.747 C178.5 F10927
X-2034.993 Y43.43 F40000
X-543.033 Y4.195
X360.056 Y-19.554 Z26.981
X565.116 Y-24.946 Z27.441
X949.935 Y-35.066 Z27.747
X4575.007 Y-130.397
X4624.99 Y-131.711
X5264.768 Y-128.534 C-90. F10509
(--- fin de passe #2 ---)


en fait je dois réorganiser les données comprises ds deux fichiers textes qui sont constitués chacun de données de ce genre et créer un 3ème fichier ds lequel je met un bloc de mon premier fichier puis un bloc de mon second.

merci d'avance

Contribution le : 21/02/2006 10:40
Créer un fichier PDF de la contribution Imprimer


Re: problème fichiers texte
Anonyme
Merci beaucoup.

Le code fonctionne seul problème: mon projet est constitué de plusieurs fenetres libres et la donnée fournie par l'utilisateur est entrée ds un champ de saisie dans une autre fenetre. Résultat ds la fenetre où le code de modification est utilisé, la variable est dite introuvable. J'ai tenté de la déclarer en externe mais ça ne fonctionne pas.

Contribution le : 21/02/2006 12:38
Créer un fichier PDF de la contribution Imprimer


Re: problème fichiers texte
Animateur WDF
Inscrit:
19/01/2004 13:48
De www.sigmasys.fr
Post(s): 988
Bonjour,

Il s'agit de la portée de la variable qui pose problème dans ce cas.
Vous pouvez déclarer une variable en globale pour y avoir accès depuis toutes vos fenêtres.

Bon dév.,

Totof

Contribution le : 21/02/2006 13:12
_________________
[ Totof(Christophe LOGEL) réalise des développements spécifiques WinDev (Mon annonce wdforge), http://www.sigmasys.fr]
Créer un fichier PDF de la contribution Imprimer


Re: problème fichiers texte
Anonyme
Merci

Le problème de déclarations des variables est résolu.Il me reste maintenant à résoudre le problème des blocs de données.

Contribution le : 21/02/2006 14:37
Créer un fichier PDF de la contribution Imprimer


Re: problème fichiers texte
Anonyme
Je bloque toujours sur mon tri de blocs.

J'ai fait une boucle où je cherche une chaine "start of couper"+i avec i un entier qui caractèrise l'avancement ds un fichier(il comprend start of couper 1, start of couper 2...);je mets toutes les lignes lues ds une chaine stock; et je fais de meme avec mon 2ème fichier.
Qd j'ai obtenu stock et stockb (ma deuxième chaine de stokage), j'écris ds mon fichier final.

Je ne sais pas si mon raisonnement est bon. Pour l'instant je vais tenter de faire fonctionner mon code.




Contribution le : 22/02/2006 00:21
Créer un fichier PDF de la contribution Imprimer


Re: problème fichiers texte
Anonyme
Je n'arrive toujours pas à résoudre le problème des blocs. Personne n'aurait une petite idée?
Je désespère là, je suis coincé et il me reste moins d'une semaine. Je ne sais pas si mon algorithme fonctionne.Est-ce que quelqu'un serait-il disposé à m'aider ou au moins m'orienter?

Contribution le : 23/02/2006 16:56
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2