Размер строки ut ut-8 в байтах?
У меня есть строка utf8
.
Мне нужно получить его размер. (байты)
Всегда ли это x2
?//Я имею в виду умножить на 2
есть ли какая-либо функция .net для этого?
p.s.
im задает этот вопрос из-за моего последнего question
... Мне нужно (в файле mempry mapped) вычитать смещение строки (utf8) - из другого процесса.
Ответы
Ответ 1
Нет, это не всегда x2 для UTF-8 и изменения, основанные на фактическом содержимом. Для символов ASCII это 1 байт, но для больших значений кодовой точки может использоваться несколько байтов. Вы хотите:
string s = // your string
int len = Encoding.UTF8.GetByteCount(s);