Thread String manipulation (30 answers)
Opened by Haselnuss992 at 2018-10-15 15:39

Raubtier
 2018-10-17 12:15
#188977 #188977
User since
2012-05-04
1054 Artikel
BenutzerIn

user image
Der Punkt ist doch, wenn du 160 Zeichen hast, dann können das auch mehr als 160 Bytes sein. Sobald die Zeichen in der Datei in einer variabel langen Kodierung wie UTF-8 oder UTF-16 gespeichert ist, kannst du eben nicht brutal 160 Bytes einlesen.

Es waren Umlaute im Beispielstring von Haselnuss992. Wir wissen nicht, wie das open-Kommando lautete, also ob da beispielsweise mit "<:utf8" geöffnet wurde. Wenn ich Buchstaben lese, würde ich nicht binär lesen.

Übrigens ist eine andere, meiner Meinung nach bessere Alternative, $/ zu setzen:
Code (perl): (dl )
my @entries = do { local $/ = \160; <$FH> }


Wenn man eine Datei mit open my $FH, "<:utf8", "file" or die $!; öffnet, liest es 160 Zeichen einer UTF-8 kodierten Datei. Also je nach Modus beim Dateiöffnen.
Last edited: 2018-10-17 12:33:42 +0200 (CEST)

View full thread String manipulation