Thread wie bekomm ich die grösse raus (6 answers)
Opened by pandur at 2006-07-08 01:06

betterworld
 2006-07-09 02:21
#67991 #67991
User since
2003-08-21
2614 Artikel
ModeratorIn

user image
Noch effizienter wäre es wahrscheinlich, wenn man noch etwas wie
Code: (dl )
1
2
use File::stat;
local $/=\(stat($FH)->blksize);

hinzufuegt. Oder besser noch mit sysread arbeiten:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
use File::stat;
open( my $FH, "<", $fileOrPipeOrWhatever )
or die $!;
my $fileSize = 0;
my $blockSize = stat($FH)->blksize;
my $len;
while($len = sysread($FH, my $buf, $blockSize) ) {
$fileSize += $len;
} # while
die $! unless defined $len;
close( $FH );

(alles ungetestet. Womöglich sind noch größere Werte von $$/ sogar noch effizienter.)

[edit]Korrektur an vorherigem Beitrag herausgenommen, weil Strat es schon eingebaut hat[/edit]\n\n

<!--EDIT|betterworld|1152444046-->

View full thread wie bekomm ich die grösse raus