#!/usr/bin/perl
use strict;
use warnings;
use utf8;
use open qw(:std :locale);
open (my $in,"-|:encoding(utf8)","echo \xc3\xb6") || die ;
my $line=<$in>;
chomp($line);
print "I read a line, that is ",length($line)," chars long.\n";
print "That line is: ",$line,"\n";
$line =~ s/ö/o/;
print "That line in ascii is: $line\n";
####
karoshi:~>LC_CTYPE=de_DE.UTF-8 ./u8demo.pl
I read a line, that is 1 chars long.
That line is: ö
That line in ascii is: o
karoshi:~>LC_CTYPE=C ./u8demo.pl
ascii "\xC3" does not map to Unicode at ./u8demo.pl line 12.
ascii "\xB6" does not map to Unicode at ./u8demo.pl line 12.
I read a line, that is 8 chars long.
That line is: \xC3\xB6
That line in ascii is: \xC3\xB6
##
##
karoshi:~>./u8demo.pl
I read a line, that is 1 chars long.
That line is: �
That line in ascii is: o