in reply to Re: Reading and unpacking on one line
in thread Reading and unpacking on one line

Thanks to all for the answers. I understand what happened now. :)

I will ask you this, since you slightly changed the method used to read the data (not that I need to know for this particular case, but just want to increase my understanding in general) - how do I specify reading 16 characters (perhaps UTF-8, for example) versus reading 16 bytes (as in pure binary data?

Thank you again

  • Comment on Re^2: Reading and unpacking on one line

Replies are listed 'Best First'.
Re^3: Reading and unpacking on one line
by choroba (Cardinal) on Nov 05, 2020 at 22:33 UTC
    The behaviour depends on the filehandle. It's documented at the end of read

    > depending on the status of the filehandle, either (8-bit) bytes or characters are read.

    Similarly, sysread:

    > Note that if the filehandle has been marked as ":utf8", Unicode characters are read instead of bytes

    So, to read UTF-8, open the file handle with the :encoding(UTF-8) layer.

    map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]
Re^3: Reading and unpacking on one line
by tybalt89 (Monsignor) on Nov 05, 2020 at 22:20 UTC

    I don't do UTF. Maybe someone else will answer this.