[???] convertir le formatage du contenu d'1 fichier txt ?

convertir le formatage du contenu d'1 fichier txt ? [???] - Divers - Programmation

Marsh Posté le 04-09-2005 à 23:48:20    

bonjour a vous tous !
 
Oui, je le sais, la 3D n'a rien a voir ici, dirais t'on..
Mon proble, si.
 
Je cherche a convertir le contenu d'un fichier
 (qui contien des lignes de codes clair : format texte BlocNote)
en le meme, sous une autres extention, toujours en format texte...
 mais où les lignes de codes sont ecrites disposées différament.. tout en gardant le contenu du code.
 
En gros..  je voudrais trouver(créer) une solution pour arriver a cela :
(mais dans une proportion de 200 lignes et + )
 
fichier d'origine

Code :
  1. D, -2667, -4787, 0, 0, 0, -256, 1023, 1022, 0, 0, 0, 0
  2. D, 2667, -4787, 0, 0, 0, -256, 0, 1022, 0, 0, 0, 0
  3. D, -2667, 4787, 0, 0, 0, -256, 1023, -1022, 0, 0, 0, 0
  4. D, 2667, 4787, 0, 0, 0, -256, 0, -1022, 0, 0, 0, 0
  5. D, -2667, -4787, 15253, 0, 0, 256, 0, 1022, 0, 0, 0, 0
  6. D, 2667, -4787, 15253, 0, 0, 256, 1023, 1022, 0, 0, 0, 0
  7. D, -2667, 4787, 15253, 0, 0, 256, 0, -1022, 0, 0, 0, 0
  8. D, 2667, 4787, 15253, 0, 0, 256, 1023, -1022, 0, 0, 0, 0
  9. D, -2667, -4787, 0, 0, -256, 0, 0, 1022, 0, 0, 0, 0
  10. D, 2667, -4787, 0, 0, -256, 0, 1023, 1022, 0, 0, 0, 0
  11. D, 2667, -4787, 15253, 0, -256, 0, 1023, -1022, 0, 0, 0, 0
  12. D, 2667, -4787, 15253, 0, -256, 0, 1023, -1022, 0, 0, 0, 0
  13. P, 3, 1, 3, 4 , 0, 0, 0, 0 , 1, 0, 0, 0 , 0, 0, 0, 0 , 0, 0, 0, 0
  14. P, 3, 4, 2, 1 , 0, 0, 0, 0 , 1, 0, 0, 0 , 0, 0, 0, 0 , 0, 0, 0, 0
  15. P, 3, 5, 6, 8


 
fichier apres conversion

Code :
  1. v -2667 -4787 0 0 0 -256 1023 1022 0 0 0 0
  2. V 2667 -4787 0 0 0 -256 0 1022, 0, 0 0 0
  3. V -2667 4787 0 0 0 -256 1023 -1022 0 0 0 0
  4. V 2667 4787 0 0 0 -256 0 -1022 0 0 0 0
  5. V -2667 -4787 15253 0 0 256 0 1022 0 0 0 0
  6. V 2667 -4787 15253 0 0 256 1023 1022 0 0 0 0
  7. V -2667 4787 15253 0 0 256 0 -1022 0 0 0 0
  8. V 2667 4787 15253 0 0 256 1023 -1022 0 0 0 0
  9. V -2667 -4787 0 0 -256 0 0 1022 0 0 0 0
  10. V 2667 -4787 0 0 -256 0 1023 1022 0 0 0 0
  11. V 2667 -4787 15253 0 -256 0 1023 -1022 0 0 0 0
  12. V 2667 -4787 15253 0 -256 0 1023 -1022 0 0 0 0
  13. f 3 1 3 4
  14. f 3 4 2 1
  15. f 3 5 6 8


 
 
Quelle cerais la plus simple des solutions a crée pour un débutant total ?
Un scripte sur un simple page web ?
Un convertiseur sous la forme d'un utilitaire ?
Une priére ?
 
Merci de toutes aides et remarques que vous pouriez m'apporter..
 

Reply

Marsh Posté le 04-09-2005 à 23:48:20   

Reply

Marsh Posté le 05-09-2005 à 00:05:01    

rechercher/replacer via expressions régulières, ca se fait facilement en php par exemple
 
 
quand tu parles de 200 lignes, c'est uniquement celle commencant par un D ?
si c'est le cas tu fais un rechercher remplacer via un simple editeur de texte
"D, " par "V, "  
"P, " par "f "
"0, 0, 0, 0 , 1, 0, 0, 0 , 0, 0, 0, 0 , 0, 0, 0, 0 " par rien
 
et tu vires les virgules en trop
 

Reply

Marsh Posté le 05-09-2005 à 13:34:19    

oui, et non,,,
oui je parle de beaucoup de lignes D et P.
Copier coller, remplacements, oui, pour ce fichier cela va, ont peu faire cela tres facilement vu que je l'ai fait.
 
 
mais j'ai besoin d'un convertiseur logique, qui puisse fair des calcules (convertir une donnée, la divisée par exemple et arriver a des nombres a virgule...
je ne sais pas encore bien m'exprimer sur le sujet, vu que j'y connais rien (ni en 3D, ni en programmation)
voir la question sur le forum 3D :
 

Reply

Marsh Posté le 05-09-2005 à 14:32:10    

dans quel language pourai'je faire un convertiseur de fichier ?
 
autre solution  :
Fair un Pluning qui permet d'enregistrer dans le forum V3o avec une mise en page addaptée... (je vais regarder un peu la forme des choses déjas existante dans cette idée..)
 
Pouriez-vous me dir de quel language il est question ?
ce sont deux plugins d'import_export.
ASCII: obj.c
?????: wpc_obj.beam

Reply

Marsh Posté le 05-09-2005 à 14:36:19    

obj.c c'est du C
 
Sinon je pense que le plus simple pour ce que tu cherches à faire, c'est d'utiliser du PERL.
 
Si tu parles de la simple conversion qui figure dans l'exemple du sujet initial, ça se fait en une dizaine de lignes maximum. Très simple.
 
Par contre...

Citation :

mais j'ai besoin d'un convertiseur logique, qui puisse fair des calcules (convertir une donnée, la divisée par exemple et arriver a des nombres a virgule...


...ce n'est pas très précis, tu cherches à faire quoi au juste ? Enfin PERL saurait s'en acquitter sans problème aussi, remarque.
 
EDIT : j'suis prétentieux, 20 lignes aérées en PERL pour la conversion simple du bazar :o


Message édité par Elmoricq le 05-09-2005 à 15:19:37
Reply

Marsh Posté le 06-09-2005 à 14:18:57    

ok, donc le language c'est du C , je note.
 
bon,,,,
 
j'ai des lignes de paramétres de plusieurs sortes, formatés (ecrites) avec des espaces, des Zéro, des caractéres d'identification du paramétre.
Le probleme est que les paramétres d'identification de ces données (le ou les premiers caractéres)
 ou la possition de la ligne de code dans les lignes du fichier (entre deux lignes, ou imbiqué dans une contenant déjas d'autres paramétres....)
ne sont pas les mémes entre le fichier Original, et celui qui pourais étre compris par l'éditeur 3D.  
 
en dehors des paramétres,
 il y a les lignes qui déffinisent la forme 3D.
 et ces lignes, tout comme les paramétres, ont un formatage prési qui différe entre les deux formats de fichier.
 
Pour le moment, en formatant a la main les seul coordonées 3D de l'objet...
  je fait un fichier qui est compris par le logiciel 3D, et celui-ci l'affiche correctement (enfin, presque)...
 
.. la forme ne fait pas tout, il faut aussi les paramétres comme :
- toutes les caracteristique de config,,,
 exemple: (le fichier original a une ligne qui dit que le jeu doit diviser les tailles de l'objet par 100000.
          ce qui fait que, arriver dans le soft 3D je me retrouve avec un objet de 3 métres dans le jeu Qui s'affiche en MILLE fois plus grand dans le soft 3D..  il faut imaginer Une voiture de 5 métre de long, afficher a la taille de 5km de long ! ) Le soft 3D ne connais rien des divers options de config, et je ne sais encore les différents différences de formatage (nom original, nom adapté au soft 3D  etc...)
- les coordonnées de placement des textures,,,
 
Une coordonée 3D original comme celle-ci :
D 45555, 12222, 0, 0, 0, ...
où D est l'identifiant, 45555 est l'axe x, 12222 l'axe y, 0 l'axe z, et les chiffres suivant pourais etre ce qui est de la positionnement de la texture (coordonée du point de la texture, parametres de grandeur texture, paramere d'éclairage du poind 3D de face où la texture est appliquée...)
Les virgules, c'est du vent, c'est juste du formatage.
 
Voila la meme ligne, mais configurée pour le logiciel 3D... où j'ai éffacer les autres paramétres en dehors des points 3D.
v 4.5555 1.2222 0.00000 0.00000 0.00000 ....
L'identifiant D change, mais cela reste toujours un identifiant qui sinifi la meme chose.
Les virgules de séparation visiel ont disparu (pas besoin).
Les chiffres des axes x y z ont subi une division a fin d'afficher 10000 fois moin grand l'objet, comformémtent a sa grandeur dans le jeu. (a cause de l'absence du parametre de grandeur d'utilisation qui n'est pas compris par le soft 3D du faite que je ne connaisent pas encore la solution de formatage adaptée).
 
(si dessous, fichiers ASCII )
Fichier 3D original (complet) compatible qu'avec le jeu.
Fichier 3D (pas complet du tout) exportable vers le soft d'édition 3D.
Fichier 3D (pas complet du tout) de retour du soft d'édition 3D. ("enregistrer sous..." = formatage ajouter par le soft)


Message édité par bouybouy2 le 06-09-2005 à 14:22:49
Reply

Marsh Posté le 06-09-2005 à 14:24:44    

PERL  
 ok, je ne sais aucunement ce que c'est...
Mais je me mét en quete pour l'avoir...
 
Existerais t'il un site specialisé pour PERL ?
 où trouver de l'aide, et peu-etre une traduction/version fr  ..

Reply

Marsh Posté le 06-09-2005 à 14:44:38    

une section de ce forum est dédiée au Perl :o
 
tu pourras trouver assez vite un interpréteur dans ce langage. Qui plus est, il se prend facilement en main donc une doc en anglais (même si tu y es réfractaire) devrait t'être suffisante (j'avoue ne pas avoir cherché si on pouvait en trouver une facilement en français, mais j'imagine que oui, de toute façon)

Reply

Marsh Posté le 06-09-2005 à 14:46:12    

S'il veut de la doc sur perl, il ya aussi des bouquins en francais qui sont bien réalisé et d'autres toujours en francais qui expliquent des chôses avancés.

Reply

Marsh Posté le 06-09-2005 à 16:37:27    

bouybouy2 a écrit :

PERL  
 ok, je ne sais aucunement ce que c'est...
Mais je me mét en quete pour l'avoir...
 
Existerais t'il un site specialisé pour PERL ?
 où trouver de l'aide, et peu-etre une traduction/version fr  ..


 
Site officiel de PERL :
http://www.perl.org  
 
Sur ce site tu trouveras l'interpréteur convenant à ton système d'exploitation, ainsi qu'une documentation bien fournie, des tutoriaux et d'autres intéressantes choses sur PERL.
 
Traductions française de la documentation :
http://www.perl-gratuit.com/traduction
 
C'est un langage très facile à prendre en main, il est très performant et pratique pour le traitement de chaînes de caractères, c'est donc le langage qu'il te faut.
Mais ça reste un langage de programmation, il faut donc un peu de travail pour parvenir à le manier.

Reply

Marsh Posté le 06-09-2005 à 16:37:27   

Reply

Marsh Posté le 06-09-2005 à 21:12:38    

theShOcKwAvE
merci pour ta réponse. :)
 
omega2
ha ? il est si connu qu'il a des boukins papier ?  super !
Bon,, je vais déjas regarder de quoi il en advient avans de commander la coupe d'un arbre en amazonie ;)
 
Elmoricq
 haaaaa, bin je te remerci grandement de ton temp passer a me répondre.. c'est tres simpa...
j'y go de suite... et si c'est bon, je ne dor pas de la nuit :D


Message édité par bouybouy2 le 06-09-2005 à 21:13:49
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed