Thread Problem mit Digest::CRC (7 answers)
Opened by bianca at 2011-08-08 18:58

GwenDragon
 2011-08-08 19:33
#151349 #151349
User since
2005-01-17
14590 Artikel
Admin1
[Homepage]
user image
CRC32 von CPAN:Archive::Zip macht bei einer Videodatei von 450 MByte ca. 2 Sekunden für die Prüfsumme.
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/usr/bin/perl

# Computes and prints to stdout the CRC-32 values of the given files

use strict;
use lib qw( blib/lib lib );
use Archive::Zip;
use FileHandle;

my $totalFiles = scalar(@ARGV);
foreach my $file (@ARGV) {
    if ( -d $file ) {
        warn "$0: ${file}: Is a directory\n";
        next;
    }
    my $fh = FileHandle->new();
    if ( !$fh->open( $file, 'r' ) ) {
        warn "$0: $!\n";
        next;
    }
    binmode($fh);
    my $buffer;
    my $bytesRead;
    my $crc = 0;
    while ( $bytesRead = $fh->read( $buffer, 32768 ) ) {
        $crc = Archive::Zip::computeCRC32( $buffer, $crc );
    }
    printf( "%08x", $crc );
    print("\t$file") if ( $totalFiles > 1 );
    print("\n");
}

Last edited: 2011-08-08 19:35:22 +0200 (CEST)
die Drachin Gwen

View full thread Problem mit Digest::CRC