Jak wstawić dodatkowy znak Unicode (powiedzmy, kodepoint 10400) w literał łańcuchowy? Próbowałem wprowadzenie zastępczego parę tak:Jak umieścić dodatkowy znak Unicode w literale ciągu?
String text = "TEST \uD801\uDC00";
System.out.println(text);
ale nie wydają się działać.
UPDATE:
Dobrą wiadomością jest to, łańcuch jest prawidłowo skonstruowany.
Bajt Tablica UTF-8 54 45 53 54 20 f 0 90 90 80
Bajt Tablica UTF-16: fe ff 0 54 0 45 0 53 0 54 0 20 D8 1 dc 0
jednak zła nowością jest, że nie jest drukowana poprawnie (w moim polu Fedory) i widzę kwadrat zamiast oczekiwanego symbolu (moja konsola nie obsługuje poprawnie unicodu).
Co masz na myśli mówiąc, że nie wydaje się do pracy? Jaka jest wartość 'text.charAt (5)'? – Mats
Nie drukuje poprawnie symbolu. Może to być coś ze strumieniem wyjściowym. – n0rm1e
Uważam, że "małe pudełko" służy do reprezentowania postaci, której system nie może wyświetlić. Może to po prostu oznaczać, że czcionka używana na ekranie, na której próbujesz wyświetlić dane wyjściowe, nie dostarcza glifu dla tej postaci. – neuralmer