Bonjour,

je souhaite extraire des données d'un fichier csv,
j'utilise pour cela une boucle et une fonction de clonage.

voici mon probleme:
la liste de "couple" de chacun des element chargé est la même. j'ai l'impression qu'il fonctionne byref et non byval.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 Private Function determinerattendu(ByVal liste As ArrayList) As List(Of element)
 
 
        Dim decalage As Integer
 
        Dim attendu As New List(Of element)
        Dim element1 As New element
        Dim listc1 As New List(Of couple)
        Dim couple1 As New couple
        Dim valeurs As New ArrayList
        Dim nbrcouple As Integer
 
 
        valeurs = separerligneencase(liste(0))
        decalage = Val(valeurs.Item(2))
 
 
        For i = 4 To 3 + decalage
            valeurs = separerligneencase(liste.Item(i))
            nbrcouple = valeurs(3)
            element1.type = valeurs(2)
            listc1.Clear()
 
            For k = 1 To nbrcouple
                couple1.debut = valeurs(2 + 2 * k)
                couple1.fin = valeurs(3 + 2 * k)
                listc1.Add(couple1.Clone)
            Next k
            '????????
            'Probleme dans la liste de couples
 
            element1.indices = listc1
            attendu.Add(element1.Clone)
            listc1.Clear()
 
        Next
        Return attendu
 
    End Function
et la classe associée où apparait la fonction de clonage:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
Public Class element
    Property type As String
    Property indices As List(Of couple)
    Public Function Clone() As element
        Dim ObjetClone As New element
        ObjetClone.type = type
        If indices IsNot Nothing Then
            ObjetClone.indices = indices
        End If
        Return ObjetClone
    End Function
End Class
qqn pourrait il m'aider?

merci par avance
Olivier