Jak odbywa się kodowanie znaków w Sakurze?


1

W edytorze Sakura możesz mieć .txtplik z kodowaniem UTF-8, który zawiera 2 znaki, które nie są dostępne w zestawie znaków EUC.

Kiedy zapisałem .txtz UTF-8 do EUC w edytorze, wszystko działa dobrze i wszystkie znaki są wyświetlane poprawnie.

Czy ktoś wie, jakiej logiki używa redaktor, aby to osiągnąć?


Nie w pełni śledzę twoje pytanie. Jakie są twoje 2 postacie, które „nie są dostępne w EUC”? Źródło tej aplikacji jest dostępne tutaj: sakura-editor.svn.sourceforge.net/viewvc/sakura-editor/sakura/… . Jestem pewien, że charcode.cpp / .h mają to, czego szukasz. Prawdopodobnie możesz także uzyskać pożądaną funkcjonalność z libiconv .

Odpowiedzi:


0

który zawiera 2 znaki, które nie są dostępne w zestawie znaków EUC

Jeśli widzisz dwa znaki ÿþ(szesnastkowe FF FE) lub þÿ(szesnastkowe FE FF) na początku pierwszego wiersza , plik jest kodowany w UTF-16, a nie w UTF-8. Znaki te są wówczas w rzeczywistości „ znakiem kolejności bajtów ” (BOM), który redaktor powinien interpretować, a nie pokazywać.

(Na wypadek, gdybyś zobaczył trzy znaki , będące szesnastkowe EF BB BF, na początku pierwszego wiersza, to jest BOM dla UTF-8. Jeśli widzisz inne znaki, lub nie na początku pierwszego wiersza, czy możesz edytować pytanie, aby dodać przykład?)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.