lenoil Posté(e) le 9 octobre 2007 Posté(e) le 9 octobre 2007 bonjour à tous, y a t-il en lisp des fonctions qui permettent de gérer facilement des fichiers ini (lecture, rajout de variables, ....) Quelqu'un a t-il déjà fait des fonctions pour gérer des ficheirs ini merci beaucoup
(gile) Posté(e) le 9 octobre 2007 Posté(e) le 9 octobre 2007 Salut, comme avec tout les fichier ascii : Après avoir défini un pointeur sur le fichier avec open : read-line retourne une chaine jusqu'àchaque saut de ligne write-char écrit un caractère (code ascii) write-line écrit une ligne les modifications sont enregistrées avec close Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Bred Posté(e) le 9 octobre 2007 Posté(e) le 9 octobre 2007 Salut,il doit y avoir quelque chose qui m'echappe :que veux tu faires avec un fichier ".ini" ?A moins que ce ne soit un fichier texte que tu veuilles enregistrer en .ini ??? Edit : Ah, doublé par (gile) (même heures....)... qui réponds en parallèlle à ce que j'écris ci-dessus.... mais cela m'ettonnerais que ce soit si simple.... [Edité le 9/10/2007 par Bred] Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
lenoil Posté(e) le 9 octobre 2007 Auteur Posté(e) le 9 octobre 2007 en fait pour être clair je voulais savoir si il existait des fonctions pour gérer les fichiers ini style windows [CHAPITRE0]param1 = tutuparam2 = toto [CHAPITRE1]param5 = trtrparam9 = titi sans rien développer comme le font certains langage ....avec des fonctions GetVariable(Chapitre, param1) et qui me retrounerai ce que je veux voila sinon ben je vais l'écrire
Bred Posté(e) le 9 octobre 2007 Posté(e) le 9 octobre 2007 Re,avec des fonctions GetVariable(Chapitre, param1) et qui me retrounerai ce que je veux Tu pourrais utiliser la base de registre pour cela. Sinon, vite fait :avec un fichier dans c: "test.ini" (defun GetVariable (param) (setq f (open "c://test.ini" "r") a (read-line f) i 0) (while (and a (not (vl-string-search param a))) (setq a (read-line f)) ) (close f) (if a (vl-string-subst "" (strcat param " = ") a)) ) (GetVariable "param5") -> "trtr" [Edité le 11/10/2007 par Bred] Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
Matt666 Posté(e) le 11 octobre 2007 Posté(e) le 11 octobre 2007 Démente cette routine toute simple !! Merci Bred !! "Chacun compte pour un, et nul ne compte pour plus d'un."
(gile) Posté(e) le 11 octobre 2007 Posté(e) le 11 octobre 2007 Bred, (while (not (vl-string-search param a)) ...) Il me semble bien que si le modèle (param) n'apparaît nulle part dans le fichier tu es dans une boucle sans fin. (while (not (and a (vl-string-search param a))) ...) plutot, non ? Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Bred Posté(e) le 11 octobre 2007 Posté(e) le 11 octobre 2007 plutot, non ?Et......... oui....pfffffff..... je corrige.merci ! Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
Bred Posté(e) le 11 octobre 2007 Posté(e) le 11 octobre 2007 ... et encore une petite correction : retourne nil si ne trouve rien. :exclam: Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
Patrick_35 Posté(e) le 12 octobre 2007 Posté(e) le 12 octobre 2007 Salut Et avec les registres, cela ne serait pas plus simple ? @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant