Trier les élément d une Array

Messages postés
67
Date d'inscription
mercredi 3 octobre 2012
Dernière intervention
24 décembre 2018
- - Dernière réponse : Whismeril
Messages postés
12573
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 janvier 2019
- 24 déc. 2018 à 20:32
salut tous le monde
jai une Array dans mon programme que lire les message de modem

l'array commecé par 0
loresque je suprime le premier msg

index "0" et suprimer
et lorseque je recu un nouveau msg il prend l'index "0"
comment trier l'array apré la suprision d'un élémon
exm: jai un trois msg
result=0,1,2
je suprime le msg1= index 0
result = 1,2

comment fait pour retourn a la premier result = 0,1


merci mes amis
Afficher la suite 

Votre réponse

3 réponses

Messages postés
12573
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 janvier 2019
762
0
Merci
Bonsoir

rien compris.

Peux tu poster le code que tu as écrit et décrire ce que tu as entrée et ce que tu veux en sortie.

Voir ici pour poster un code lisible.
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Il y a un bug sur ce tuto, les images n'apparaissent plus.
Commenter la réponse de Whismeril
Messages postés
67
Date d'inscription
mercredi 3 octobre 2012
Dernière intervention
24 décembre 2018
0
Merci
Salut whismeril
merci pour la réponse
alors
mo probleme est : j'ai un programme attaché avec un modem qui lire automatiquement les messages 24/24 h par les command AT et chaque message lue sera supprimé apré la lecture
je lue et supprimé le premier message correctement

mais la seule probleme si: message N°1 il prend Index = 0 ; message N°2 index=1
et insu de suit
lors que je supprime le message N°1 index = 0 et supprémé alors le nouveau message qui vas lue au future il prend index =0
comment fait pour le nouveau message prendre le dernier index
merci de mes aider

exp : debut de lecture


exp: appré suprime de index = 0


exp: nouvel lecture des messages ( chaque 5 seconds nouvel lecture )




exp:
Private Sub Read_MSG()
        Me.Enabled = False
        Me.Cursor = Cursors.WaitCursor
        Try
            With SerPorts
                RcvData = ""
                .Write("AT" & vbCrLf)
                ' Threading.Thread.Sleep(50)
                .Write("AT+CMGF=1" & vbCrLf)
                ' Threading.Thread.Sleep(50)
                .Write("AT+CPMS=""SM""" & vbCrLf)
                ' Threading.Thread.Sleep(50)
                .Write("AT+CMGL=""ALL""" & vbCrLf)
                Threading.Thread.Sleep(500)
                Desplay_MSG()

            End With

        Catch ex As Exception
            MsgBox(ex.Message)
        End Try

        Me.Enabled = True
        Me.Cursor = Cursors.Default
    End Sub


 Private Sub Desplay_MSG()

        LstView.Items.Clear()
      
        Try
            Dim LigneOfTxt As String
            Dim i As Integer
            Dim ArryFille() As String
            LigneOfTxt = RcvData.ToString
            ArryFille = Split(LigneOfTxt, "+CMGL",, CompareMethod.Text)
            For i = 1 To ArryFille.Length - 1
                Dim Input As String = ArryFille(i)
                Dim Result() As String
                Dim Paterne As String = "(:)|(,"")|("","")|(OK)"
                Result = Regex.Split(Input, Paterne)
                Dim Lvi As New ListViewItem
                Dim Concat() As String

                With LstView.Items.Add(i.ToString)
                    ' for Index
                    .SubItems.AddRange(New String() {Result(2)})
                    ' for Message Status
                    .SubItems.AddRange(New String() {Result(4)})
                    ' sender number
                    Dim My_string As String, Position As Integer
                    My_string = Result(6)
                    Position = My_string.Length - 2
                    My_string = My_string.Remove(Position, 2)
                    .SubItems.Add(My_string)

                    ' for date and time
                    Concat = New String() {Result(8) & Result(9) & Result(10) & Result(11) & Result(12).Substring(0, 2)}
                    .SubItems.AddRange(Concat)
                    ' for message recu
                    Dim My_string1 As String
                    My_string1 = Result(12)
                    My_string1 = Mid(My_string1, 7, 50)
                    .SubItems.Add(My_string1)

                End With

            Next
         
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub
Commenter la réponse de dadibarca23
Messages postés
12573
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 janvier 2019
762
0
Merci
Peux tu me donner un exemple de ce que vaut RcvData.ToString?
dadibarca23
Messages postés
67
Date d'inscription
mercredi 3 octobre 2012
Dernière intervention
24 décembre 2018
-
les trois tableau listView se son des : RcvData.ToString
Whismeril
Messages postés
12573
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 janvier 2019
762 -
oui, mais j'aimerais voir comment c'est avant ton traitement.
Commenter la réponse de Whismeril

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.