Comment structurer un convertisseur de format de fichier

Comment structurer un convertisseur de format de fichier - Algo - Programmation

Marsh Posté le 15-02-2006 à 15:06:36    


Je planche sur un convertisseur de format de fichier en php. C'est un format de fichier propriétaire, en partie du texte et en partie du binaire.
 
Comme souvent dans la pratique on monte sur sa bécane et on pond un truc ( spa bien je sais...). Bien que j'arrive à mes fins j'aimerais faire évoluer la structure du convertisseur... en mieux.  
 
Convertir un format de fichier en un autre similaire est un problème assez répandu ( les moulinettes) donc je suppose qu'il doit y avoir des 'recettes' voir des 'design patterns' dans la nature... mais j'arrive pas à mettre la main dessus ( surement une histoire de mots clefs mal choissi).  
 
Si vous avez un lien où un avis comment structurer ce genre de programme, c'est pas de refus...  
 

Reply

Marsh Posté le 15-02-2006 à 15:06:36   

Reply

Marsh Posté le 16-02-2006 à 10:38:36    

les pro de l'algo sont en congés?  :whistle:

Reply

Marsh Posté le 21-02-2006 à 16:22:55    


C est un problème aussi balaise que vague...
 
Pourtant, je pense que tu peux trouver un début de réponse en t inspirant de ce qui a été fait avec les types mimes.
 
Tu trouvera une liste de types mimes avec le serveur web apache (apache.org). Tu peux aussi consulter Le Site Officiel des types mimes (dont je ne me souvient plus du tout de l adresse, mais qui doit figurer en bonne place dans tous les moteurs de recherche).
 
En fait tu a besoin d une part d une structure en arborescence qui décrit les types de formats principaux et les sous-types convertibles entre eux, d autre part d une structure de graphe qui décrit les conversion possibles entre toutes les feuilles de l arbre. Ça devrait te permettre par example de convertir une page texte en jpg en passant par le format postscript. Attention à penser aux options de conversion, stockées dans le graphe.
 
 
 
 
 

Reply

Sujets relatifs:

Leave a Replay

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