Учитывая строку Unicode и эти требования:
- Строка кодируется в некоторый формат последовательности байтов (например, UTF-8 или JSON unicode escape)
- Закодированная строка имеет максимальную длину
Например, для службы push push требуется JSON-кодирование с максимальным общим размером пакета 256 байтов.
Каков наилучший способ обрезания строки, чтобы она перекодировала в действительный Unicode и что она отображается правильно?
(Человеческое понимание языка не является обязательным; усеченная версия может выглядеть странно, например, для сиротского символа объединения или тайской гласной, до тех пор, пока программное обеспечение не падает при обработке данных.)
См. также:
- Связанный Java-вопрос: Как усечь строку java для того, чтобы она соответствовала заданному количеству байтов, как только кодировка UTF-8?
- Связанный Javascript вопрос: Использование JavaScript для усечения текста до определенного размера