Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Question toute simple ...

2 réponses
Avatar
Dom
Bonjour,

Je souhaite supprimer la ligne X d'un fichier texte. Quelle est la syntaxe
en VB pour faire celà ?
Merci

Dom

2 réponses

Avatar
le_troll
Bonjour,

-1- Tu fais un double de ton fichier (2)
-2- Tu lis ton fichier origine (1), et tu écris tout dans le nouveau fichier
destination(2), sauf la ligne que tu veux effacer.
-3- Ensuite tu supprimer ton fichier (1)
-4- Tu copies ton fichier (2) en fichier (1)
-5- Tu supprimes ton fichier (2)
----
NB tu pourrais aller plus vite à ne faisant que 2 opérations, au lieu de 3,
4 et 5, soit, -3- tu supprimer ton fichier origine(1), et tu renommes ton
fichier destination(2) en fichier origine(1), mais tu as un risque de pertes
de datas en cas de problème...
-------------

Ce principe peut aussi d'appliquer dans une liste si tu ne dépasses pas les
30.000 enregistrements environ, la liste recevant tout ce qu'il y a dans le
fichier sauf la ligne à supprimer, puis tu créé un nouveau fichier pas
effacement, et tu y insère ta liste... (faire un fichier intermédiaire de
sauvegarde par sécurité durant l'opération).

--------------

Méthode 3, si les enregistrements son d'égale taille:
-1- Tu ouvres en binaire, tu cherches ton enregistrement à supprimer et
notes la position pointeur du 1er octet.
-2- Tu ouvre ensuite le fichier en écriture, et tu mets à l'adresse du
pointeur d'octet, une variable vide de la longueur de l'enregistrement à
supprimer, terminée par ascii 13+10 inclus (dim blanc as string * 128):
fichier(1) put p, , blanc + chr(13) + chr(10)
-3- Au prochain enregistrement il te suffira de coller dans le blanc réalisé
ton enregistrent, et s'il n'y a pas de blanc, de coller en fin, par la
méthode respectivement binaire, et texte...

------------------

TRI du fichier, après insertion ou ressassement (suppression).
-1- Soit tu le fais à l'aide d'une liste (propriété sorted = true) (-32.000 enregistrements), soit tu le fais avec un tri bulle entre deux
fichiers par comparaison:
Par exemple si ça pore sur une date, connaissant les dates extrêmes, tu
génères dans une variable de la date la plus basse à la date la plus haute,
et tu compares avec le fichier d'origine, et si la date coïncide, tu l'écris
dans le fichier de destination...
Le tri bulle peut s'appliquer aussi avec des variables, mais c'est plus
performant avec des listes, et ce système_me est limité, soit à la taille de
la liste 32.000 enregistrement, soit à la taille de ta ram pour les
variables...

--
Merci, @+, bye, Joe
troll75 AROBASE iFrance POINT com
------------------------------------------
Le_Troll, éleveur de Trolls depuis César, qui disait:
Avec une hache, celui qui tient le manche a toujours raison !


"Dom" a écrit dans le message de
news:
Bonjour,

Je souhaite supprimer la ligne X d'un fichier texte. Quelle est la syntaxe
en VB pour faire celà ?
Merci

Dom




Avatar
Jean-Marc
"Dom" a écrit dans le message de
news:
Bonjour,

Je souhaite supprimer la ligne X d'un fichier texte. Quelle est la syntaxe
en VB pour faire celà ?




Hello,
il n'y a pas de moyen "tout fait" en VB pour faire cela.
Une de méthodes est:
Ouvrir le fichier source en lecture
Ouvrir un second fichier de travail en ecriture
Lire les (X-1) lignes de source
Ecrire les (X-1) lignes de source dans le fichier de travail
lire la ligne X dans source (SANS l'ecrire dans travail)
Lire les lignes (X+1) jqa derniere ligne dans source
Ecrire les lignes (X+1) jqa derniere ligne dans travail
Fermer source et travail
Detruire source
Renommer travail source

voila.

--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."