У меня есть код Unicode, который может быть что угодно: возможно, ASCII, возможно, что-то в BMP и, возможно, экзотический смайлик, например U+1F612.
Я ожидал, что будет простой способ взять кодовую точку и закодировать ее в массив байтов, но не могу найти простого способа. Я могу превратить его в строку, а затем закодировать, но это обходной путь, включающий сначала кодирование в UTF-16, а затем перекодирование в требуемую кодировку. Я хотел бы закодировать его непосредственно в байты.
public static byte[] encodeCodePoint(int codePoint, Charset charset) {
// Surely there's got to be a better way than this:
return new StringBuilder().appendCodePoint(codePoint).toString().getBytes(charset);
}
Подробнее здесь: https://stackoverflow.com/questions/662 ... -codepoint
Закодировать кодовую точку ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как мне преобразовать UTF-8 в шестнадцатеричном формате в его кодовую точку?
Anonymous » » в форуме JAVA - 0 Ответы
- 10 Просмотры
-
Последнее сообщение Anonymous
-