cteni a zapis binarniho (jpg) souboru
Richard Janasek
richard na janasek.cz
Středa Září 15 15:42:24 CEST 2010
tak jsem zkusil vyhodit vše zbytečné a nechal jen rádoby funkční skript,
který nefunguje.
(zřejmě nerozumím tomu, jak uložit obsah vstupu do pole a potom to z
pole vytisknout na výstup)
$VystupniSoubor = "vystup.jpg";
open(FOTO, $ARGV[0]); # --- cteme soubor
binmode (FOTO);
@foto = <FOTO>;
open (VystupFoto, ">>$VystupniSoubor");
binmode (VystupFoto);
print VystupFoto "@foto";
> On Wed, Sep 15, 2010 at 05:38:52AM +0200, Richard Janasek wrote:
>> ano, vstup mam take v binmode, alespon si to myslim. (nedulezite radky
>> jsem vypustil kvuli prehlednosti)
>
> Obecne je dobre zkusit najit nejaky minimalni priklad chyby, tedy funkcni
> kod, ktery ma nezadouci chovani, a pritom uz nejde zjednodusit. Nezridka
> pritom clovek sam zjisti, v cem je problem. Tipuju ale, ze nize uvedeny kod
> netrpi tim, ze by se vstup od vystupu lisil jen absenci binarnich nul,
> protoze
>
>> open(FOTO, $fotka); # --- cteme soubor
>> binmode (FOTO);
>>
>> @foto =<FOTO>;
>
> tady do @foto nactete cely obsah FOTO,
>
>> $VystupniSoubor2 = $Jmeno;
>> open (VystupFoto2, ">>$VystupniSoubor2");
>> binmode (VystupFoto2);
>>
>> while (<FOTO>)
>
> takze tady uz ve FOTO nic neni a cyklus neprobehne ani jednou,
>
>> {
>> $Fotecka = getc FOTO;
>
> ovsem i kdyby probihal, na jeho konci byste mel ve $Fotecka posledni znak
> FOTO (nebo tak neco, viz manual), protoze zrejme chcete spis .= nez jen =
> (ale hlavne si nejsem jisty, jestli je rozumne cist soubor zrovna skrze
> getc),
>
>> }
>> close(FOTO);
>>
>> print VystupFoto2 "$Fotecka\n";
>
> no a nakonec pridavate k binarnimu souboru extra znak \n, coz myslim taky
> neni uplne dobry napad.
> P.
>
>>> On Tue, Sep 14, 2010 at 03:31:11PM +0200, Richard Janasek wrote:
>>>> mam tam tohle:
>>>>
>>>> $VystupniSoubor = $Prijmeni;
>>>> open (VystupFoto, ">>$VystupniSoubor");
>>>> binmode (VystupFoto);
>>>
>>> A zrejme tam mate jeste nejaky dalsi open VstupFoto a na ten filehandle to
>>> chcete pouzit taky.
>>> P.
>>>
>>>> (pouštím to na Win XP a ActiveState Perl5 v12)
>>>> R.
>>>>
>>>>
>>>>> On Tue, Sep 14, 2010 at 01:33:14PM +0200, Richard Janasek wrote:
>>>>>> prosim o radu, jakym zpusobem cist binarni soubor (jpg) a jeho nasledny
>>>>>> zapis do jineho souboru (v podstate kopirka). Kdyz pouziju pristup jako
>>>>>> k textovemu souboru - getc, tak vystup neni identicky se vstupem (jsou
>>>>>> vynechany prazdne znaky).
>>>>>
>>>>> Funkce binmode? (Manual dokonce rika " ... regardless of platform, use
>>>>> binmode() on binary data, like for example images." :-)
>>>>> S pozdravem, P.
>>>>> _______________________________________________
>>>>> Perl mailing list
>>>>> Perl na mailman.muni.cz
>>>>> https://mailman.muni.cz/mailman/listinfo/perl
>>>>
>>>> _______________________________________________
>>>> Perl mailing list
>>>> Perl na mailman.muni.cz
>>>> https://mailman.muni.cz/mailman/listinfo/perl
>>> _______________________________________________
>>> Perl mailing list
>>> Perl na mailman.muni.cz
>>> https://mailman.muni.cz/mailman/listinfo/perl
>>
>> _______________________________________________
>> Perl mailing list
>> Perl na mailman.muni.cz
>> https://mailman.muni.cz/mailman/listinfo/perl
> _______________________________________________
> Perl mailing list
> Perl na mailman.muni.cz
> https://mailman.muni.cz/mailman/listinfo/perl
Další informace o konferenci Perl