Oppure

Loading
06/11/08 19:58
GrG
Ciao a tutti, ho un problema che non saprei come risolvere. Necessito di leggere files ed uso:
dim dati(1 to 9999) as string, i as integer
Open "blabla.exe" For Binary As #1
Do
i = i + 1
Get #1, , dati(i)
DoEvents
Loop Until EOF(1) = True
Close #1

Diciamo che il codice che uso è simile solo che non c'è la limitazione di grandezza file...cmq per un file di pochi kb lo carica subito nell'array, ma già basta ke sia da 4 mg e ci mette un eternità, a questo punto mi domando come far leggere tutto insieme, o cmq trovare un metodo + veloce. Grazie.

P.s. Ho trovato quest'API ma non ho capito come utilizzarla: forum.masterdrive.it/visual-basic-6-17/leggere-file-pi-grossi-2-gb-31241/
aaa
06/11/08 20:51
P4p3r0g4
adesso dico una cazzata ma la lentezza non e` dovuta dal fatto che stocchi tutto in byte?
cioe io uso principalmente le string (lo so che non e` consigliabile) ma carica anche delle centinaia di mega in pochi secondi..
aaa
07/11/08 12:50
GrG
Il problema è che sto facendo un editor esadecimale e se uso le string in realtà non mi prende tutti i caratteri presenti nel file, quindi quando salvo l'exe risulta "danneggiato"...

capito?
aaa
08/11/08 18:11
P4p3r0g4
e salvarlo in un'array di integer oppure long?
non dovrebbe essere troppo difficile. l'unico problema è la segmentazione/ conversione che potrebbe ciucciare un fracasso di tempo.
aaa
08/11/08 19:16
GrG
Ho imparte risolto usando al posto della get #1:
dati = Input(LOF(1), #1)

l'unico probl è che x i file un pò più grossi di 20 o 10 mega ci mette un pò...cmq diciamo che a me va bene così perchè gli exe non sono poi tanto grandi :D
aaa