Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
Crashsound

Inscrit le: 14 Mai 2003 Messages: 418 Localisation: Malintrat, à proximité de Clermont Ferrand
|
Posté le: 10 Oct 2003 15:12 Sujet du message: |
|
|
je pense avoir trouver, c est par une boucle de mid et de trim. Merci quant même. _________________ Labor omnia vincit improbus. |
|
Revenir en haut de page |
|
 |
Speedy^SF Shit Fliez
Inscrit le: 21 Mar 2003 Messages: 762 Localisation: Troyes
|
Posté le: 10 Oct 2003 18:21 Sujet du message: |
|
|
BIn voilà crash, t'as même plus besoin de nous
C'est bien la preuve que tu n'es pas ignare ^^ _________________ Speeeeeeddyyyyyyyyyyy !!!!!!
Personnal Website
Team Website |
|
Revenir en haut de page |
|
 |
Crashsound

Inscrit le: 14 Mai 2003 Messages: 418 Localisation: Malintrat, à proximité de Clermont Ferrand
|
Posté le: 10 Oct 2003 23:40 Sujet du message: |
|
|
J ai un petit problème dans un code et j avance pas:
Dim x As String
Dim y As String
Open "C:\text.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, x
y = Mid(x, 17, 19)
Text1 = y
Loop
End Sub
J arrive pas avec ça, à lui faire sauter une ligne pour qu il continue à lire avec la ligne du dessous. Là, il me sort que la dernière ligne du text.txt malgré la boucle Do While Not EOF(1). SVP, venez en aide à une merde de codeur comme moi...
Mon but est bien sûr qu il me sorte dans un textbox(text1), la série des données que j ai localisé et pas seulement la derniére ligne!!! _________________ Labor omnia vincit improbus. |
|
Revenir en haut de page |
|
 |
Speedy^SF Shit Fliez
Inscrit le: 21 Mar 2003 Messages: 762 Localisation: Troyes
|
Posté le: 11 Oct 2003 1:09 Sujet du message: |
|
|
hum
Text1 = Text1 & y & vbcrlf _________________ Speeeeeeddyyyyyyyyyyy !!!!!!
Personnal Website
Team Website |
|
Revenir en haut de page |
|
 |
Crashsound

Inscrit le: 14 Mai 2003 Messages: 418 Localisation: Malintrat, à proximité de Clermont Ferrand
|
Posté le: 11 Oct 2003 8:55 Sujet du message: |
|
|
Tiens, c est quoi vbcrlf? Combinaison des caractères de retour chariot et de saut de ligne....d accord, voilà qui va être utile! Merci cousin! _________________ Labor omnia vincit improbus. |
|
Revenir en haut de page |
|
 |
Crashsound

Inscrit le: 14 Mai 2003 Messages: 418 Localisation: Malintrat, à proximité de Clermont Ferrand
|
Posté le: 11 Oct 2003 9:18 Sujet du message: |
|
|
problème d un autre ordre, ça ne répond plus, est ce que le texte à traiter est trop important ou quoi? Il ne fait pourtant que 8,90mo. Alors, je comprend plus rien! Fais chier la prog!!!! _________________ Labor omnia vincit improbus. |
|
Revenir en haut de page |
|
 |
Fremen^SF GDB des Shit Fliez

Inscrit le: 21 Mar 2003 Messages: 863 Localisation: Versailles
|
Posté le: 11 Oct 2003 14:54 Sujet du message: |
|
|
Si possible Crashsound, dès que tu as un problème, n'hésite pas à copier le bout de code qui te cause problème (pour qu'on soit sûr de ne pas raconter de bêtises !).
Si l'on suppose que ton code est le même que celui de ton post ci-dessus - hormis la ligne "Text1 = Text1 & y & vbcrlf" - ton problème vient peut-être de la ligne suivante :
y = Mid(x, 17, 19)
Car a priori, si x fait moins de 17+19 octets, le programme te retournera une erreur.
Si ton programme ne répond vraiment plus, assure toi déjà que tu as suffisamment attendu pendant son éxécution. Parce que la lecture d'un gros fichier en VB peut parfois prendre plusieurs secondes.
Si ce n'est toujours pas ça, n'hésite pas à nous faire un copier/coller de ton code source (du moins de la partie concernée), et on t'expliquera pourquoi ça ne passe pas.
P.S.:Ben oui ça fait chier la prog, mais c'est justement ça le plaisir ! Si l'on ne passait pas des heures à comprendre une "broutille", on n'aurait aucun plaisir à faire des programmes qui marchent
En tout cas garde courage, c'est en suivant cette démarche (apprendre/comprendre/assimiler et demander à quelqu'un quand tu es vraiment bloqué) que tu avanceras le mieux. _________________
 |
|
Revenir en haut de page |
|
 |
Crashsound

Inscrit le: 14 Mai 2003 Messages: 418 Localisation: Malintrat, à proximité de Clermont Ferrand
|
Posté le: 11 Oct 2003 20:22 Sujet du message: |
|
|
lJe me suis trompé dans la ligne:
y = Mid(x, 17, 8 ) Voilà, pas 19!
Mais x représente mon fichier volumineux à décortiquer et la fonction mid ne parle pas d octets, ou alors je comprend pas tout... Elle parle de position et de longueur de chaïne de caractéres (c est peut être ça que tu comptes en octet...) Mais même aprés une attente prolongé, pas de réponse...Le code que j ai écrit en haut est le bon, il est entier, je voulais déjà arriver à faire ça avant de m attaquer au réél code auquel j ai déjà réalisé l interface graphique. _________________ Labor omnia vincit improbus. |
|
Revenir en haut de page |
|
 |
Johjo^SF Shit Fliez

Inscrit le: 21 Mar 2003 Messages: 310 Localisation: Ardeche
|
Posté le: 11 Oct 2003 20:25 Sujet du message: |
|
|
8.90 Mo, ça fait quand même assez gros pour visual Basic
Pour vérifier où tu en es, essaye de mettre un indicateur, ou un truc dans le genre, ou des points d'arret, ou fais un ctrl pause pour arreter l'execution et vérifier où tu en es dans le fichier. |
|
Revenir en haut de page |
|
 |
Johjo^SF Shit Fliez

Inscrit le: 21 Mar 2003 Messages: 310 Localisation: Ardeche
|
Posté le: 11 Oct 2003 20:27 Sujet du message: |
|
|
euh, un caractere fait la taille d'un octet, donc, quand on dit une chaine de 10 octets en vb, c'est une chaine de 10 caracteres, donc, c'est du pareil au même  |
|
Revenir en haut de page |
|
 |
Crashsound

Inscrit le: 14 Mai 2003 Messages: 418 Localisation: Malintrat, à proximité de Clermont Ferrand
|
Posté le: 11 Oct 2003 20:37 Sujet du message: |
|
|
J ai été mauvaise langue, apparemment je ne lui laissé pas assez de temps...xcuse me fremen...
EDIT: j ai vu ton message aprés johjo, merci pour ces précisions !
Tu as sans doute raison puisqu il n a pas tout affiché!!!
THX _________________ Labor omnia vincit improbus. |
|
Revenir en haut de page |
|
 |
Speedy^SF Shit Fliez
Inscrit le: 21 Mar 2003 Messages: 762 Localisation: Troyes
|
Posté le: 11 Oct 2003 21:46 Sujet du message: |
|
|
Je ne suis pas sûr que le pb vienne de là, mais au lieu de mettre "Do While Not EOF(1)" essaye de laisser "Do" et de changer le "Loop" en "Loop untile EOF(1)"
Ca pourra ptet aider :] _________________ Speeeeeeddyyyyyyyyyyy !!!!!!
Personnal Website
Team Website |
|
Revenir en haut de page |
|
 |
Johjo^SF Shit Fliez

Inscrit le: 21 Mar 2003 Messages: 310 Localisation: Ardeche
|
Posté le: 11 Oct 2003 22:53 Sujet du message: |
|
|
Do While Not EOF(1) ---> fais tant que l'on n'est pas à la fin du fichier ouvert sous le numéro 1
Loop until EOF(1) ----> boucle jusqu'à ce que l'on atteigne la fin du fichier
Je ne vois pas trop la différence, sauf que ton test, tu le fais au début ou à la fin, while not, c'est la même chose que until, enfin, à ce que j'ai cru comprendre, donc, ça ne doit pas poser de probleme de ce côté.
Edit :
La seule différence, c'est si le fichier est vide ou pas, s'il est vide, en suivant la méthode de speedy, ça provoquera une erreur, dans l'autre non... Je n'arrive pas à voir d'où viens le probleme |
|
Revenir en haut de page |
|
 |
Crashsound

Inscrit le: 14 Mai 2003 Messages: 418 Localisation: Malintrat, à proximité de Clermont Ferrand
|
Posté le: 12 Oct 2003 0:12 Sujet du message: |
|
|
ok, donc je garde la structure présente! _________________ Labor omnia vincit improbus. |
|
Revenir en haut de page |
|
 |
Speedy^SF Shit Fliez
Inscrit le: 21 Mar 2003 Messages: 762 Localisation: Troyes
|
Posté le: 12 Oct 2003 11:54 Sujet du message: |
|
|
Johjo : bioen vu pour le cas où le fichier est vide, mais dans si on utilise while not eof(1) sur le do là ça provoquera une erreur lors de la derniére lecture si je me souviens bien
Enfin bref, dans tout les cas vu ce qui a été exposé sur le chan des SF il y a pas mal de code à faire pour crashsound
Johjo : sur le chan tu parle de faire un redim pour augmenter le tableau de string d'une ligne ; récement j'ai vu sur msdn que pour éviter de perdre des données lors d'un redimensionnement il faut faire "redim preserve"
Voili voilou _________________ Speeeeeeddyyyyyyyyyyy !!!!!!
Personnal Website
Team Website |
|
Revenir en haut de page |
|
 |
|