Ich habe eine Schleife, die etwa 300.000 mal bei jeder Iteration betreibe ich gespeichert:Was ist der schnellste Weg, Daten von vb.net zu erhalten?
time_elps = stwt.Elapsed.TotalMilliseconds
read.Add(time_elps, OFV_best)
Schließlich möchte ich nur die Werte von read
(ein Wörterbuch natürlich) nehmen ein Diagramm auf Excel zu ziehen.
Ich habe versucht, diese Daten nach Excel zu exportieren:
oxl = CreateObject("Excel.application")
oxl.Visible = True
owb = oxl.Workbooks.Add
osheet = owb.ActiveSheet
For i = 0 To 100
osheet.Cells(i + 1, 1).Value = read.Item(read.Keys.ElementAt(i))
osheet.Cells(i + 1, 2).value = read.Keys.ElementAt(i)
Next
und in eine Textdatei:
dauert es zu viel ZeitobjStreamWriter = New StreamWriter("C:\Users\Dr. Mohamed ElWakil\Desktop\data.txt")
For i = 0 To read.Count - 1
objStreamWriter.WriteLine(CStr(read.Item(read.Keys.ElementAt(i)) & "," & (read.Keys.ElementAt(i))))
Next
objStreamWriter.Close()
In beiden Fällen ist es länger als die Zeit des Laufens der Code selbst.
Was schlagen Sie vor, um meine Daten einfach und schnell zu bekommen?
Welche for-Schleife braucht zu viel Zeit? Im ersten Fall machen Sie nur 100 Iterationen, im zweiten Fall 300.000 Iterationen. – SEFL
Der Wertabruf ist möglicherweise der Vorgang, der die meiste Zeit in Anspruch nimmt. Versuchen Sie, mit 'foreach var pair in read 'zu iterieren. Sie erhalten ein Paar mit Schlüssel und Wert und müssen den Wert nicht nach Schlüssel abfragen. –
@SEFL, Extrahieren von Daten entweder durch Excel oder per Textdatei dauert zu viel Zeit .. Der Algorithmus oder der Code kann in zwei Minuten fertig sein, aber ich warte auf 15 Minuten, um alle Daten zu bekommen – AlKobtan