Fonction Instr...

mrpulse
Messages postés
3
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
14 juin 2010
- 13 juin 2010 à 08:46
mrpulse
Messages postés
3
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
14 juin 2010
- 14 juin 2010 à 18:11
fonction instr
Bonjour à tous,

J'ai un petit soucis, j' ai réaliser un montage à base de pic 16F722 qui transmet via rs232 Trois températures. la trame de com ressemble à :
$1#21,9$2#22,7$3#0224....
T1=21,9°C;T2=22,7°C;T3=0224°C
j'enregistre au fur et à mesure les infos dans un fichier autosave.txt ( exemple:

$1#21,9$2#22,7$3#0224$1#21,9$2#22,7$3#0230$1#21,9$2#22,7$3#0230$1#21,9$2#22,7$3#0217$1#21,9$2#22,7$3#0228$1#21,9$2#22,7$3#0223
COM3 9600 8 None 1 None
12/06/2010 17:25:06)
avec un programme fait maison en visual basic 2008.
Mon soucis est que j'aimerais trier le tout.
J'aimerais créer un autre fichier mesure.txt qui ressemblerait à :
21,9 22,7 0224
21,9 22,7 0230
21,9 22,7 0230
21,9 22,7 0217
21,9 22,7 0228
21,9 22,7 0223

COM3 9600 8 None 1 None
12/06/2010 17:25:06

J'ai vu qu'il existait la fonction instr mais j'ai du mal...
Merci pour votre aide.

6 réponses

Utilisateur anonyme
13 juin 2010 à 10:29
Bonjour,
Il existe les Collections triées

Dim macol As New Collections.SortedList
macol.Add(mamesure)
macol.Add(mamesure2)
'etc...

a bientôt
0
us_30
Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
10
13 juin 2010 à 12:46
Bonjour,

L'instruction INSTR permet seulement de connaître la position d'une sous-chaine dans une chaine (texte) et rien de plus... IL faut ensuite utiliser des instructions de remplacement... Par exemple avec "Mid". En faisant un bouclage dans la chaine pour la passer en revu... On peut aussi remarquer que dans exemple, c'est la sous-chaine de la forme "$1#" et "$2#" qui sont à remplacer par un espace en premier lieu. Donc on peut aussi voir (peut-être) aussi .Replace

Amicalement,
Us.
0
Mayzz
Messages postés
2813
Date d'inscription
mardi 15 avril 2003
Statut
Membre
Dernière intervention
2 juin 2020
30
13 juin 2010 à 15:56
Salut,

En .Net, tu peux utiliser les méthode de traitement des chaînes directemet depuis une variable de type String, Exemple :

Dim Data As String = "Bla bla bla..."
Data.Split ' Découpe le code à l'aide d'un délimiteur et retourne un tableau de string
Data.LastIndexOf' Retourne l'index du dernier caractère passé en référence 
Data.SubString' Correspond à la fonction Mid$ d'us_30
Data.Replace' Correspond aussi à la fonction Replace d'us.


Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
cs_christoni
Messages postés
140
Date d'inscription
mardi 25 novembre 2003
Statut
Membre
Dernière intervention
1 novembre 2010
7
13 juin 2010 à 18:31
Bonsoir,
et en complément du postage précédent, donner un coup d'œil aux Constantes d'impression et d'affichage.
Un exemple pour tester avec un bouton "btnTest" :
    Private Sub btnTest_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnTest.Click
        'http://msdn.microsoft.com/fr-fr/library/f63200h0(VS.90).aspx
        Dim textOrigin As String = "$1#21,9$2#22,7$3#0224$1#21,9$2#22,7$3#0230$1#21,9$2#22,7" _
                     & "$3#0230$1#21,9$2#22,7$3#0217$1#21,9$2#22,7$3#0228$1#21,9$2#22,7$3#0223"
        Dim textRendu As String
        textRendu = textOrigin.Replace("$1#", vbCrLf)
        textRendu = textRendu.Replace("$2#", " ")
        textRendu = textRendu.Replace("$3#", " ")

        MessageBox.Show(textRendu)

    End Sub
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mrpulse
Messages postés
3
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
14 juin 2010

13 juin 2010 à 19:53
D'avance merci pour vos réponses et votre aide. Je vais essayer tout ça.
0
mrpulse
Messages postés
3
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
14 juin 2010

14 juin 2010 à 18:11
Bonjour,
Merci ça fonctionne très bien.
Ca fait plaisir
0