Thread Fehlerfreie Übertragung einer Datei (74 answers)
Opened by ITobiI at 2015-09-15 17:14

GwenDragon
 2015-10-01 16:20
#182468 #182468
User since
2005-01-17
14533 Artikel
Admin1
[Homepage]
user image
1. Mit IO::Compress::... gehts.
Kurz geschildert:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
my $buffer = 'Das ist ein Text \x0D\x07Test,!#FooBar';
my $zipped_output = '';
my $unzipped_output = '';

# komprimieren
use IO::Compress:Zip qw(zip $ZipError);
my $status = zip \$buffer => \$zipped_outputor die "zip schlug fehl!: $ZipError\n";

# dekomprimieren
use IO::Uncompress::Unzip qw(unzip $UnzipError);
my $status = unzip \$buffer => \$unzipped_output or die "unzip schlug fehl: $UnzipError\n";


2. Länge des Puffers >=2 bedeutet 2 Bytes, =mindestens 16bit
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
sub ge_16bit {
  use bytes;
  return length($_[0])>=2 ? 1 : 0;
}

my $buffer = "Z";

say $buffer, ' >=16bit: ', ge_16bit($buffer);

$buffer = "Fo";
say $buffer, ' >=16bit: ', ge_16bit($buffer);

$buffer = "FooBar";
say $buffer, ' >=16bit: ', ge_16bit($buffer);



3. Es gibt eigentlich keine echten boolschen Werte in Perl 5.
Machs halt so wenn du ungedingt was nachstellen willst:
Code (perl): (dl )
1
2
3
4
5
6
use constant TRUE  => 1;
use constant FALSE => 0;

my $TEST = not FALSE;

print $TEST;


Editiert von GwenDragon: Backslash bei zip vergessen
Last edited: 2015-10-02 09:41:42 +0200 (CEST)
die Drachin, Gwendolyn


Unterschiedliche Perl-Versionen auf Windows (fast wie perlbrew) • Meine Perl-Artikel

View full thread Fehlerfreie Übertragung einer Datei