Thread Umlaute und printf (8 answers)
Opened by der_thomas at 2018-02-07 21:16

der_thomas
 2018-02-07 21:16
#187990 #187990
User since
2013-09-07
158 Artikel
BenutzerIn
[default_avatar]
Hallo,

ich habe ein kleines Problem mit der Darstellung einer 2 spaltigen Tabelle in der in der linken Spalte Umlaute vorkommen und printf.

Die Werte werden aus einer Textdatei ausgelesen (diese ist in utf8 codiert)
Mein Terminal nutzt auch utf8.

das Ergebnis sieht dann aber so aus:
Code: (dl )
1
2
3
4
5
6
Autodromo Lago Maggiore GP                         31.01.2018
Alsace Dorf 01.02.2018
Nürburgring GP 01.02.2018
Dragon Trail Küste 02.02.2018
Interlagos 03.02.2018
Tokyo Expressway Östlicher Außenring 04.02.2018


es wandert also die rechte Spalte pro Umlaut um eine Stelle nach links.

Der Code den ich zur Ausgabe verwende ist der hier:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
use v5.12;
use warnings;
use utf8;
use Encode qw(encode decode);
my $enc = 'utf-8';
...
...
for my $i (0..($zeile-1)){
    my $dectemp0 = encode($enc, $tab->[$i]->[0]);
    my $dectemp1 = encode($enc, $tab->[$i]->[1]);
    printf "%-45s      %-10s", $dectemp0, $dectemp1;
    print "\n";
}


Hat da jemand eine Idee wie man das lösen könnte, oder muss man damit leben bzw. statt 'ü' ein 'ue' schreiben ?

Ich verwende Perl 5.22.1 auf einem Linux Mint 18.3

Beste Grüße
thomas

View full thread Umlaute und printf