[VB] Faire une lecture "mot par mot" d'un fichier en accès sequentiel?

Faire une lecture "mot par mot" d'un fichier en accès sequentiel? [VB] - Programmation

Marsh Posté le 08-01-2002 à 17:22:28    

Je voudrais pouvoir lire un fichier txt "mot à mot" pour pouvoir comparer un fichier à un autre...
 
Quelqu'un aurait une idée de la manière dont je pourrais faire ca ? :??:

Reply

Marsh Posté le 08-01-2002 à 17:22:28   

Reply

Marsh Posté le 08-01-2002 à 17:28:47    

Quel séparateur veux tu utiliser pour différencier ce que tu appelles un mot ? seulement les espaces ou aussi les signes de ponctuation ?
 
Utilise la lecture séquentielle 'Line Input' avec la fonction 'Split' (en VB6 exclusivement) qui permet de découper une chaine et de récupérer les éléments dans un tableau.
 
A+

Reply

Marsh Posté le 08-01-2002 à 17:34:45    

En fait je voudrais utiliser tous les separateurs que l'on utilise "nous" pour separer nos mots lorsque l'on ecrit... :)(espaces, virgules, points virgule, points, apostrophes, etc...)
 
C'est pour pouvoir ensuite voir où sont les differences entres les deux txt...

Reply

Marsh Posté le 08-01-2002 à 17:37:12    

Ben tu lis un caractere et tu regardes si c un separateur possibles(tufais un switch case ca doit bein exister en VB  :D )
et voila ton mot si c t pas le cas tu lis le caractere suivant

Reply

Marsh Posté le 08-01-2002 à 17:59:00    

En fait le problème c'est que je suis encore en train de reflechir sur l'algo, et que je ne sais pas encore comment je vais faire pour comparer efficacement...
 
Car s'il y a un mot de plus dans un des fichiers par rapport à l'autre, je ne veux pas que le prog me dise que tout ce qu'il y a après est different... :(
 
Bref, ya du boulot ! :D

Reply

Marsh Posté le 09-01-2002 à 11:06:06    

Comment je peux faire pour lire le fichiers à partir d'un certain point ? :??:
 
Par exemple, lire à partir du charactère n du fichier...
 
J'ai bien pensé à faire n-1 lectures "dans le vide" pour arriver au caractère n mais je ne trouve pas ca très elegant... Et au final ca va consommer trop de ressource pour une operation normalement simple... :(

Reply

Marsh Posté le 09-01-2002 à 11:14:13    

Ben il doit y avoir un fseek ou un truc du genre mais le VB je connais pas... Mais ya eu un topic ua pas longtmpes la dessus cherche un peu sur le forum

Reply

Marsh Posté le 09-01-2002 à 11:51:30    

la fonction de recherche du forum a l'air un peu en rade... :(
 
Quel que soit ce que je cherche il n'y a aucune reponse...

Reply

Marsh Posté le 09-01-2002 à 12:26:08    

C'est pas "seek" tout court ? J'ai un peu perdu la mémoire (vite une barette supplémentaire !).
Y a "get" qui va avec. Faut ouvrir le fichier en mode BINAIRE, lire caractère par caractère par get, regarder si c'est un caractère reconnu comme séparateur (espace, virgule, point-virgule, etc.. selon choix).
 
Avec seek, on donne le numéro du caractère du fichier. Suffit de savoir quand on quitte un mot et quand on en commence un autre.

Reply

Marsh Posté le 09-01-2002 à 13:28:14    

Vous vous êtes tous donnés le mot ?
Pour l'accès direct à un fichier en VB, voir ma réponse à un autre message (effectivement la recherche foire complètement sur le forum, ça date de 2 jours max et moi même j'ai eu du mal à le retrouver!)
http://forum.hardware.fr/forum2.ph [...] &owntopic=
 
A+

Reply

Marsh Posté le 09-01-2002 à 13:28:14   

Reply

Marsh Posté le 09-01-2002 à 15:56:42    

Merci à vous deux :jap:
 
Maintenant à nous deux VB ! :lol:

Reply

Marsh Posté le 09-01-2002 à 16:45:09    

En fait seek, get, etc... ne marchent qu'en mode binaire...
 
Et je ne vais pas réussir à recuperer correctement les données de mon fichier texte si je l'ouvre en mode binaire non ? :??:
 
Car en fait je voudrais réussir à recup les "phrase" d'une page HTML, donc seulement ce qui est entre certaines balises... et pour l'instant j'y arrive pas trop... :(

Reply

Marsh Posté le 09-01-2002 à 17:43:07    

pour l'algo tu peux lire cet article, c'est pour delphi mais cela te donnera peut-être des idées...
 
http://www.thedelphimagazine.com/samples/1199/1199.htm

Reply

Marsh Posté le 09-01-2002 à 17:50:29    

Merci ! :jap:
 
Je vais regarder ca...

Reply

Sujets relatifs:

Leave a Replay

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