2011-08-05 3 views

Odpowiedz

7

0x96 znaków nie jest ważna kodowanie UTF-8. Istnieje blok punktów kodowych tuż powyżej 0x80, który w UTF-8 koduje początek 2- lub 3-bajtowego znaku.

Dane wejściowe, które czytasz, nie mogą mieć formatu UTF-8 i najprawdopodobniej są to Latin1 lub CP1252.

Konieczne będzie przekonwertowanie danych wejściowych na UTF-8, jednak robi się to w Perlu (minęło sporo czasu, odkąd zrobiłem dowolny Perl i nie używałem domyślnie UTF-8 podczas pisania Perla :-)

+0

Co mam teraz zrobić? Ponieważ skonfigurowałem aplikację na innym komputerze, to działa, ale na innym nie działa. – Bhushan

+2

Pomoże to, jeśli edytujesz swój wpis, aby dołączyć więcej informacji, takich jak kod wokół miejsca, w którym pojawi się błąd i próbka danych, które powodują problem. W przeciwnym razie po prostu zgadujemy. –

+0

To nie jest błąd krytyczny. Strona jest poprawnie wyświetlana, ale ta wiadomość znajduje się u góry. – Bhushan

5

Podejrzewam, że coś, co według Ciebie jest zakodowane w UTF-8, nie jest w rzeczywistości zakodowane za pomocą UTF-8.

1

Po prostu umieszczenie tej informacji na wypadek, gdyby pomogło komuś w przyszłości.

Jeśli pracujesz z produktem firmy Microsoft, przyczyną mogą być znaki spoza Stanów Zjednoczonych (europejski, chiński itp.). Na przykład, jeśli ktoś prześle ci arkusz kalkulacyjny Excela z danymi, które musisz przetworzyć i będzie zapisany w formacie CSV, te znaki mogą znajdować się poza zakresem utf-8, jeśli nie zostały poprawnie zapisane.

Na szczęście, przynajmniej w programie Excel dla komputerów Mac w wersji 15, możliwe jest pobranie tych danych i "zapisanie jako" pliku CSV UTF-8 - znajduje się on na liście opcji. Jest to osobna opcja z drugiej opcji pliku CSV. Spowoduje to przekształcenie znaków spoza US w zestaw znaków UTF-8 i rozwiązanie tego problemu.

Powiązane problemy