1 | |
Auteur | Messages |
---|---|
LanoueC | #1 Posté le 25/11/2010 à 22:30:00 |
Bonjour Pour supprimer une ligne d'un fichier texte, je re-écris le dit fichier sans la ligne que je veux supprimer !!! n'y a t'il pas une façon plus simple pour effacer une ligne d'un fichier texte? Merci LanoueC | |
gambix | #2 Posté le 25/11/2010 à 22:55:00 |
Faire simple ! | non :)... c'est la seule méthode existante et ceci dans tout les langage en faite imagine une ligne de bille tu en enlève 4 au milieu sur les dix ... tu doit don bouger toute les bille de lafin pouravoir a nouveau une ligne continue et un fichier est obligatoirement une ligne continue. pour cela il faut pouvoir déplacer la fin. mais comme on ne peut pas vraiment lire des donnée en les déplaçant on doit générerune copie corrigée que l'on replace ensuitea la place de l'original. Moins de texte dans une signature c'est agrandir son espace. |
LanoueC | #3 Posté le 26/11/2010 à 14:52:00 |
Merci Gambix ton exemple avec les billes est très parlant Bonne journée LanoueC | |
spheris | #4 Posté le 26/11/2010 à 20:23:00 |
ne peut on pas se deplacer avec les fonctions PEEK et POKE ? | |
LanoueC | #5 Posté le 26/11/2010 à 21:49:00 |
Sphéris, c'est ce que j'ai fait avec SEEK #fichier, position LigneAsup Donc oui, j'ai réussi à effacer les données sur la ligne Mais non, je n'ai pas réussi à enlever cette ligne désormais vierge sans avoir à re-ecrire un nouveau fichier il faudrait pouvoir effacer le retour ligne je pense Lanouec | |
gambix | #6 Posté le 26/11/2010 à 22:49:00 |
Faire simple ! | Bonjour Dit moi tu n'a pas bien compris l'istoir des bielle hein un retour de ligne c'est un caractère... en faite c'est le caractère ascii 13. Donc si tu lit le fichier byte par byte ... tu ne véra pas le retour c'est un caractère comme un autre ... c'est juste la façon de l'afficher qui change. quand on supprime une partie d'une chaine ... par exemple en faisant : machaine =Left(machaine,3)& mid(machaine,6) la je vire une partie au centre... bien en faite en interne on Génère la chaine dans une zone tampon et on remplace la valeur a l'adresse mémoire de la première + un caractère ascii 255 qui signifit que c'est la fin de la chaine. si tu supprime des caractère dans un fichier tu obtien debut du fichier + N*chr(0) + fin du fichier et pas un fichier avec tes donnée a suivre Moins de texte dans une signature c'est agrandir son espace. |
1 |