Diese Frage ist ähnlich wie bei anderen, die vorher gepostet wurden. Bei allen Kombinationen funktioniert nichts.BOM auf Unicode setzen U-Code UTF8 perl
Ich brauche meine Excel-Datei in Unicode Utf8 gelesen haben, ich bin versucht, meine bom zu setzen:
my $csv = Text::CSV->new ({binary=>1, eol =>$/}) or die "cannot use CSV: ".Text::CSV->error_diag(); open my $csvFile, ">:encoding(UTF-8)", "teht.csv" or die "teht.csv: $!"; print($csvFile "\x{FEBBBF}");
aber dies wird ein errror und sagt, dass "0xFEBBBF nicht Unicode ist ..."
Alle Informationen, die ich gefunden habe, zeigen an, dass der Code für utf8 print($csvFile "\N{U+FEBBBF}")
oder ... "\xFE\xBB\xBF"
oder ähnlich lesen sollte.
Is it possible to force Excel recognize UTF-8 CSV files automatically? ist eine Quelle, die das viele Male sagt.
https://stackoverflow.com/a/22711105/6557829 ist eine andere Quelle.
Bis jetzt konnte ich UTF-16 tatsächlich mit der gleichen Druckanweisung arbeiten: print($csvFile "\N{U+FEFF}");
aber das ist mehr Platz, als ich verwenden möchte. Vielen Dank im Voraus für jede Hilfe, die Sie mir geben können.
Stückliste ist U + FEFF, nicht U + FEBBBF. – ikegami
@ikegami U + FEFF ist der Code für utf16 nicht für utf8 –
U + FEFF bedeutet "Unicode Code Point FEFF", und es hat nichts mit UTF-8 oder UTF-16 zu tun. – ikegami