/ / Jak sprawdzić, czy istnieje nazwa pliku Unicode? - perl, unicode, nazwy plików, solaris

Jak sprawdzić, czy istnieje nazwa pliku Unicode? - perl, unicode, nazwy plików, solaris

Zgodnie z perlunicode, -e nie będzie działać z nazwami plików Unicode, więc jak mogę sprawdzić, czy istnieje nazwa pliku Unicode? W systemie Solaris.

Odpowiedzi:

7 dla odpowiedzi № 1

W systemach uniksowych nazwy plików są po prostu ciągami bajtów. Musisz przejść do -e ta sama sekwencja bajtów, co rzeczywisty plikimię. Istnieje duża szansa, że ​​są to bajty kodowania utf-8 tekstu, który widzisz. Więc jeśli masz punkty kodu Unicode ("dekodowany tekst"), spróbuj wykonać następujące czynności:

utf8::encode( my $fn = $decoded_text );
say -e $fn ? "exists" : "doesn"t exist";

W razie potrzeby nie zapomnij poprzedzić nazwy katalogu.