Condor Café Forum

Version complète : Fusion de fichiers objets
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Pour répondre à une demande de Michel DGT, j'ai écrit une petite application ("quick and dirty") qui permet de fusionner deux fichiers objets provenant de deux scènes qui se recouvrent. 
Il est aussi possible de visualiser le contenu d'un fichier objet.  
La doc est (restera) sommaire.

On peut la télécharger là : https://drive.google.com/open?id=1PBGzcM...Go-znDiEEr

Je poste exprès dans Créations de scènes plutôt que dans Utilitaires car l'application est très spécifique.
Toujours dans la même veine, saurais tu fabriquer un programme qui puisse repérer une chaine de caractères dans un fichier quelconque, la remplacer par une autre, et soustraire à la valeur hexa de l'octet précédent cette chaine la différence de longueur entre ces 2 chaines?
JF Gombault pourrait bien être intéressé...
(15-12-2018, 13:20 )dgtfer a écrit : [ -> ]Toujours dans la même veine, saurais tu fabriquer un programme qui puisse repérer une chaine de caractères dans un fichier quelconque, la remplacer par une autre, et soustraire à la valeur hexa de l'octet précédent cette chaine la différence de longueur entre ces 2 chaines?
JF Gombault pourrait bien être intéressé...

Oui, ça ne devrait pas être trop difficile, surtout si on reste en mode ligne de commande.

Il faut juste que, si on ne connait pas exactement la structure du fichier, la chaîne de caractères ne puisse pas être confondue avec des données binaires.

Si on connaît la longueur des enregistrements du fichier et la longueur maxi des chaînes à modifier (NB : si c'est codé sur un octet, on sait déjà que c'est au maxi 255 ;-) ), ça simplifie notablement le boulot. Le mieux c'est de mettre ça en paramètres d'entrée du programme.

Il pourrait être utile de préciser, si nécessaire, par quoi on remplit l'enregistrement si la nouvelle chaîne est plus courte que l'ancienne.

Un seul couple de chaînes ou plusieurs ?

Je peux commencer à travailler sur des fichiers .obj 

En passant, un peu de pinaillage : 
l'hexadécimal n'est qu'un mode de représentation des valeurs stockées en mémoire (toujours en binaire), un entier reste un entier, quelle que soit la façon dont on l'affiche, par exemple la valeur quinze : en binaire = 1111, en décimal = 15, en hexadécimal = 0F.