Toon posts:

[VB] Filesize van een dir

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik loop de verschillende bestanden van een directorie af (staan gelogd in een tekstfile). Hier staat ook per bestand de filesize.

Ik lees deze tekstfile uit met Visual Basic, maar als ik deze filesize'n nu ga optellen dan zit ik al redelijk snel met een overflow error. (max van long = 2^32/2 )

Hoe kan ik dit oplossen? Is er miss een speciale manier om dit op te slaan?

PS: Ik heb al reeds geprobeerd deze op voorhand te delen door 1024. Maar dan klopt het totaal niet meer. (Omdat er vele files zyn van 0.525 Kb ofzo)

Hopelyk weten jullie hier een oplossing voor...

Tnx

[ Voor 3% gewijzigd door Verwijderd op 27-03-2003 11:46 ]


  • sjroorda
  • Registratie: December 2001
  • Laatst online: 18:13
ehhh... weet niets van VB af, maar er zal toch ook wel een INT-type zijn van 64 bits??? Even in de manual kijken bij variabelen...

[ Voor 6% gewijzigd door sjroorda op 27-03-2003 11:46 ]


Verwijderd

Topicstarter
Mja het aantal Mb kan ik in een variabele steken. Maar het aantal bytes niet.
En ik werk nog met VB6. Daar is de long nog 32 bit. By vb.net is er nu al een 64-bits variabele.

Kan ik in vb6 ook 64bits variabelen declareren?

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 22-08 13:19

.oisyn

Moderator Devschuur®

Demotivational Speaker

wil je het precies op de byte weten? Zo niet, dan kun je overwegen om doubles te gebruiken (sowieso kun je met doubles perfect 53-bits getallen precies weergeven)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • pjonk
  • Registratie: November 2000
  • Laatst online: 29-12-2025
Decimal 14 bytes +/-79,228,162,514,264,337,593,543,950,335 with no decimal point;

Volgens mij heb je hier wel genoeg aan ;)

edit:

Wel een beetje ruimte verspilling natuurlijk. Jammer dat VB geen unsigned longs aan kan. Dan verdubbel je meteen je bereik omdat je bij 0 begint.

[ Voor 40% gewijzigd door pjonk op 27-03-2003 11:52 ]

It’s nice to be important but it’s more important to be nice


Verwijderd

Topicstarter
Ik wist ni da doubles nog meer konden stockeren...
Maar het werkt dus gelle zult wel gelyk hebben :)

Dus allen merci ...
Hier mag een slotje op komen ...

  • farlane
  • Registratie: Maart 2000
  • Laatst online: 16:32
Je zou ook een variant met subtype decimal kunnen gebruiken :
Visual Basic:
1
2
3
Dim blaat as Variant

blaat = CDec( 0 )


Heb je een bereik van +/-79,228,162,514,264,337,593,543,950,335

Big enough for ya ? :)

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 22-08 13:19

.oisyn

Moderator Devschuur®

Demotivational Speaker

farlane: uhm, dat staat 2 posts boven je ook al

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Adion
  • Registratie: Januari 2001
  • Laatst online: 23:21
en Currency gaat toch ook? Dat is eigenlijk een 64-bit integer, waar een komma gezet is voor het 4de laatste cijfer.

VirtualDJ 2026 - Fast Image Resizer - Instagram


  • farlane
  • Registratie: Maart 2000
  • Laatst online: 16:32
.oisyn schreef op 27 March 2003 @ 15:57:
farlane: uhm, dat staat 2 posts boven je ook al
Hmmm ... zat niet op te letten denk ik. Verrekte stagiaires ook met hun muur van vragen ... >:)

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.

Pagina: 1