Скільки символів можна зберегти в 4KB?


82

Скільки символів я можу зберегти в 4 кб, коли символи перебувають у кодуванні utf-8?

Відповіді:


115

У UTF-8 символи потребують від 1 до 4 байт. Отже, ви можете зберігати від 4096 до 1024 відповідно символів UTF-8 у 4 КБ.

Я б припустив, що у багатьох випадках використання можна очікувати, що більшість символів вміщуються в один байт, а майже всі в 2.


8
Для розширення символи в ASCII займають лише 1 байт, інші символи можуть займати більше. Тож один із способів оцінити, де в діапазоні дає MForster, - це запитати себе, яка частина ваших персонажів, ймовірно, буде ASCII. Якщо це в основному текст англійською мовою з випадковими наголошеними символами, можливо, ви можете помістити ближче до 4000 символів. Якщо ваш текст є, скажімо, на телугу, це, як правило, становить 3 байти на символ, тому ви можете вмістити десь близько 1300 або близько того.
Jacob Mattison

Гм, я використовую кирилицю та англійську мову, але вона кодується base64, а потім зберігається. отже, я думаю, base64 - це чисто англійська мова, і це робить e символ за байтом правильно, який складає 4096 символів, правда?
Pockata

3
Це вірно. (Припускаючи, що ваше питання полягає в тому, скільки символів кодованого рядка base64 вміщується, а не скільки оригінальних символів кирилиці).
MForster

Так, я додав base64 у код після того, як написав це запитання
Pockata

120

Ось наочна підказка, скільки коштує 1024 або 4096 . Прочитайте повідомлення @Jon Snyder, щоб краще зрозуміти.

1024 символи (припускаючи, що символи мають 4 байти):

Lorem ipsum dolor sit amet, concectetuer adipiscing elit. Aenean commodo ligula eget dolor. Енейська маса. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla наслідку massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium. Ціле ціле. Cras dapibus. Vivamus elementum semper nisi. Енейський вульпутат елеїфенд теллус. Aenean leo ligula, porttitor eu, posleat vitae, eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet. Quisque rutrum. Енейська імпердієта. Etiam ultricies nisi vel augue. Curabitur ullamcorper ultricies nisi. Nam eget dui. Етіам Ронкус. Меценас темпус, tellus eget condimentum rhoncus, sem quam semper libero, сидить наскрізь, розмножуючи sem neque sed ipsum. Nam quam nunc, blandit ve

4096 символів (припускаючи, що символи мають 1 байт):

Lorem ipsum dolor sit amet, concectetuer adipiscing elit. Aenean commodo ligula eget dolor. Енейська маса. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla наслідку massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium. Ціле ціле. Cras dapibus. Vivamus elementum semper nisi. Енейський вульпутат елеїфенд теллус. Aenean leo ligula, porttitor eu, posleat vitae, eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet. Quisque rutrum. Енейська імпердієта. Etiam ultricies nisi vel augue. Curabitur ullamcorper ultricies nisi. Nam eget dui. Етіам Ронкус. Меценас темпус, tellus eget condimentum rhoncus, sem quam semper libero, сидить наскрізь, розмножуючи sem neque sed ipsum. Nam quam nunc, blandit vel, luctus pulvinar, hendrerit id, lorem. Меценаси, віднесені до попереднього часу. Donec vitae sapien ut libero venenatis faucibus. Nullam quis ante. Etiam sit amet orci eget eros faucibus tincidunt. Duis leo. Sed fringilla mauris sit amet nibh. Donec sodales sagittis magna. Sed sledat, leo eget bibendum sodales, augue velit cursus nunc, quis gravida magna mi a libero. Fusce vulputate eleifend sapien. Vestibulum purus quam, scelerisque ut, mollis sed, nonummy id, metus. Nullam accumsan lorem in dui. Cras ultricies mi eu turpis hendrerit fringilla. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; In ac dui quis mi consectetuer lacinia. Nam pretium turpis et arcu. Duis arcu tortor, suscipit eget, imperdiet nec, imperdiet iaculis, ipsum. Sed aliquam ultrices mauris. Ціле число ante arcu, accumsan a, consectetuer eget, posuere ut, mauris. Попереднє виховування. Phasellus ullamcorper ipsum rutrum nunc. Nunc nonummy metus. Vestibulum volutpat pretium libero. Cras id dui. Aenean ut eros et nisl sagittis vestibulum. Nullam nulla eros, ultricies sit amet, nonummy id, imperdiet feugiat, pede. Sed lectus. Donec mollis hendrerit risus. Phasellus nec sem in justo pellentesque facilisis. Etiam imperdiet imperdiet orci. Nunc nec neque. Phasellus leo dolor, tempus non, auctor et, hendrerit quis, nisi. Curabitur ligula sapien, tincidunt non, euismod vitae, posuere imperdiet, leo. Maecenas malesuada. Praesent з'їзд ерату в Масі. Sed cursus turpis vitae tortor. Donec posuere vulputate arcu. Phasellus accumsan cursus velit. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Sed aliquam, nisi quis porttitor congue, elit erat euismod orci, ac placerat dolor lectus quis orci. Phasellus consectetuer прихожа еліта. Aenean tellus metus, bibendum sed, posuere ac, mattis non, nunc. Vestibulum fringilla pede sit amet augue. В turpis. Pellentesque posuere. Praesent turpis. Aenean posuere, tortor sed cursus feugiat, nunc augue blandit nunc, eu sollicitudin urna dolor sagittis lacus. Donec elit libero, sodales nec, volutpat a, suscipit non, turpis. Нуллам сагітіс. Suspendisse pulvinar, augue ac venenatis condimentum, sem libero volutpat nibh, nec pellentesque velit pede quis nunc. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Fusce id purus. Ut varius tincidunt libero. Фалос долор. Меценат вестибулум моліс діам. Pellentesque ut neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. In dui magna, posuere eget, vestibulum et, tempor auctor, justo. In ac felis quis tortor malesuada pretium. Pellentesque auctor neque nec urna. Proin sapien ipsum, porta a, auctor quis, euismod ut, mi. Енейська віверра rhoncus pede. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Ut non enim eleifend felis pretium feugiat. Vivamus quis mi. Phasellus a est. Phasellus magna. У hac habitasse плато диктоване. Curabitur at lacus ac velit ornare lobortis. Кура Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. In dui magna, posuere eget, vestibulum et, tempor auctor, justo. In ac felis quis tortor malesuada pretium. Pellentesque auctor neque nec urna. Proin sapien ipsum, porta a, auctor quis, euismod ut, mi. Енейська віверра rhoncus pede. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Ut non enim eleifend felis pretium feugiat. Vivamus quis mi. Phasellus a est. Phasellus magna. У hac habitasse плато диктоване. Curabitur at lacus ac velit ornare lobortis. Кура Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. In dui magna, posuere eget, vestibulum et, tempor auctor, justo. In ac felis quis tortor malesuada pretium. Pellentesque auctor neque nec urna. Proin sapien ipsum, porta a, auctor quis, euismod ut, mi. Енейська віверра rhoncus pede. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Ut non enim eleifend felis pretium feugiat. Vivamus quis mi. Phasellus a est. Phasellus magna. У hac habitasse плато диктоване. Curabitur at lacus ac velit ornare lobortis. Кура Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Ut non enim eleifend felis pretium feugiat. Vivamus quis mi. Phasellus a est. Phasellus magna. У hac habitasse плато диктоване. Curabitur at lacus ac velit ornare lobortis. Кура Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Ut non enim eleifend felis pretium feugiat. Vivamus quis mi. Phasellus a est. Phasellus magna. У hac habitasse плато диктоване. Curabitur at lacus ac velit ornare lobortis. Кура


2
у мене знадобилася доля секунди, щоб зрозуміти нісенітниці у цій відповіді :)
Мила,

18

Символ UTF-8 має від 1 до 4 байт, тому це залежить від того, який символ ви кодуєте. Більшість англійської мови використовує 1 байт для кожного символу. Інші західні мови використовують 2 байти. Азіатські символи можуть використовувати 4 байти.

Тож відповідь - від 1024 до 4096 залежно від персонажів. Крім того, у середовищі Windows вам може знадобитися 3-байтова специфікація на початку документа, яка зменшить кількість символів, які можна помістити в 4 Кб. Дивіться статтю Вікіпедії про UTF-8 .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.