Bonjour
J'ai un tableau qui contient plus de 10 Million d'enregistrement et je veux bien savoir combien il ya de doublons et les supprimer ?
et je veux bien savoir combien sa va prendre du temps pour me donné le résultat
Cordialement
Bonjour
J'ai un tableau qui contient plus de 10 Million d'enregistrement et je veux bien savoir combien il ya de doublons et les supprimer ?
et je veux bien savoir combien sa va prendre du temps pour me donné le résultat
Cordialement
tu as des collections qui évitent les doublons, comme la hashset qui est apparu au framework 3.5 http://msdn.microsoft.com/fr-fr/libr...=vs.90%29.aspx
Bonjour,
Quand vous parlez de tableau, vous voulez dire une table dans une base de donnée je suppose?
Règles du forum + Comment utiliser Developpez.com =
Découvrez le magazine gratuit de Developpez.com
Si vous développez en .NET, la FAQ, les tutos et l'aide MSDN sont vos amis !!!
Dvp.NET, la librairie .NET open source de Developpez.com
Je plussoie Paul63
Et si vous n'avez pas le choix, que vous êtes obligé de tout charger, LINQ permet de faire cela sur les tableaux...
Règles du forum + Comment utiliser Developpez.com =
Découvrez le magazine gratuit de Developpez.com
Si vous développez en .NET, la FAQ, les tutos et l'aide MSDN sont vos amis !!!
Dvp.NET, la librairie .NET open source de Developpez.com
Merci pour les repenses
Mais sachant que je suis débutent dans le monde du .NET qu'il es la l’utilisation la plus simple.
Mais on prendre en compte que il ya des moment ou je doit donné au systeme des fichier qui contient plus de 10 Million de lignes.
sachant que j'ai déjà réalisé ce systeme sous php mais sa me fais attendre plus de 10 min pour avoir résultat
Cordialement
Règles du forum + Comment utiliser Developpez.com =
Découvrez le magazine gratuit de Developpez.com
Si vous développez en .NET, la FAQ, les tutos et l'aide MSDN sont vos amis !!!
Dvp.NET, la librairie .NET open source de Developpez.com
voila comment je charge les donné
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 Dim PATHFICHIER As String = "test.txt" Dim list As New List(Of String) 'lecture du flux Dim Monflux As Stream Monflux = File.OpenRead(PATHFICHIER) 'lecture ligne à ligne Dim Maligne As StreamReader = New StreamReader(Monflux, System.Text.Encoding.ASCII) Maligne.BaseStream.Seek(0, SeekOrigin.Begin) '.peek défini le caractère suivant, si =-1 alors 'c'est qu'il n'y a plus de caractère 'la fin du fichier est donc atteinte Dim i As Integer = 0 While Maligne.Peek() > -1 Dim rep As String = Maligne.Peek 'MsgBox(Maligne.ReadLine()) 'j'affiche ligne après ligne list.Add(Maligne.ReadLine()) End While Maligne.Close() 'on n'oublie pas de fermer le fichier
Si vous changez votre liste en HashSet : Dim List As New HashSet(Of String) vous êtes sur de n'avoir qu'une seul fois les valeurs, mais vous ne pourrez pas compter le nombre de valeurs identique...
Est-ce que c'est important de savoir le nombre de doublons?
Règles du forum + Comment utiliser Developpez.com =
Découvrez le magazine gratuit de Developpez.com
Si vous développez en .NET, la FAQ, les tutos et l'aide MSDN sont vos amis !!!
Dvp.NET, la librairie .NET open source de Developpez.com
le mieux est de list.add seulement si list de contient pas déjà le string (if not list.contains)
le list n'est pas le plus performant pour ca, car contains va lire toute la collection pour vérifier la présence
il y a des collections où contains est plus rapide
si une ligne du fichier = une données à mettre dans la collection tu peux tenter
ce n'est le plus performant mais c'est le plus simple à écrire
Code : Sélectionner tout - Visualiser dans une fenêtre à part list = System.IO.File.ReadAllLines("le path du fichier").Distinct.ToList
Partager