Thread Byte raw format in String umwandeln (Glib::IO::File->get_contents)
(18 answers)
Opened by Max_Perlbeginner at 2016-05-31 10:53
Liebe Perl-Spezialisten,
Ich versuche gerade die Funktion Glib::IO::File::get_contents() zum Laufen zu kriegen. Das Problem ist, dass nach dieser Quelle Glib::IO Dateien im "raw byte format" liest und speichert, d.h. ohne jegliche Kodierung (keine Ahnung, was das heißt ;-) ). Um es konkret zu machen: 1)Ich habe eine einfache Textdatei mit dem Inhalt: "Hallo Welt" 2) Wenn ich deren Inhalt mit my ($success, $content, $etags) = Glib::IO::File::load_contents($file) lese [wobei $file eben eine zuvor erzeugte GFile ist] erhalte ich neben anderen Variablen eine Arrayreferenz auf den content in der Variablen $content. 3) Diese Arrayreferenz dereferenziere ich mit my @contents = @$content; 4) Doch, wenn ich diese dann ausgebe (print "@contents \n";), erhalte ich Folgendes: Quote Ihr könnt Euch vorstellen, dass sich bei mir alles dreht ;-). Ich hab schon gesehen, dass scheinbar pack oder unpack der richtige Weg sein muss. Aber da werde ich einfach nicht schlau. Die API Referenz gibt übrigens für content als element-type guint8 an, was folgendermaßen definiert wird (ist vlt. auch relevant): Quote Letztlich ist es ein akademisches Problem, weil ich die Dateien ja auch mit perl Befehlen öffnen und schreiben kann, aber meine Neugier ist natürlich geweckt und vlt. kann mir jemand helfen diesen Content-Array in eine leserliche Perl Variable umzuwandeln. Im Voraus Danke! |