↓
 ↑
Регистрация
Имя/email

Пароль

 
Войти при помощи
Lirеin
4 февраля 2021
Aa Aa
#фанфикс #писанина

Я чего-то не понимаю. Почему у фиков с одинаковым количеством слов разные килобайты? Причем ощутимо разные. И еще сильнее не понимаю, почему у фика с большим количеством слов килобайтов меньше, чем у фика с меньшим количеством? С чем это связано?
4 февраля 2021
9 комментариев
Со средней длиной слов и особенностями форматирования, полагаю.
BrightOne
Все равно странно получается. Разница в 4-5 кб.
Lirеin
BrightOne
Все равно странно получается.

Ну почему? В норме один символ - это один байт. Плюс два байта на перенос строки, три-четыре байта на псевдо-HTML последовательность (как открывающую, так и закрывающую) и т.д. Разница может очень нехилая накопиться.
FluktLight
"Тетрагидропиранилциклопентилтетрагидропиридопирид иновые"(не пускает слова длиннее 50 символов) и "и" - слова.
При том что одно длиннее второго в 55 раз.
И соответственно первое слово - 110 байт занимает, а второе только 2 байта...
Размер файла высчитывается по всем используемым символам.
Слова - по числу групп символов выделенных пробелами, точками и далее по списку символов...
BrightOne
FluktLight
Ладно, спасибо, буду иметь в виду.
учитывайте, что есть разные «алфавиты» (обычному люду, а не учителям информатики, известные как кодировка), они имеют разное количество символов.

Допустим, в алфавите 256 символов — такой алфавит позволяет юзеру печатать почти все символы, которые есть на клаве и называется достаточным.

Значит, информационный вес одного символа в таком алфавите равен восьми битам (или одному байту), потому что 256 = 2⁸

А у нас ситуация с текстами несколько иная по двум причинам:
[1.] Хотя форма записи UTF-8 позволяет кодировать до 2²¹ (2 097 152) кодовых позиций, было принято решение использовать лишь 1 112 064 для совместимости с UTF-16. Впрочем, даже и этого в данный момент более чем достаточно — в версии 13.0 используется всего 143 859 кодовых позиций.
Помимо этого, надо учитывать, что UTF-8...
UTF-8 <...> — распространённый стандарт кодирования символов, позволяющий более компактно хранить и передавать символы Юникода, используя переменное количество байт (от 1 до 4) <...>
То есть например, обычный пробел и неразрывный пробел, хотя они для вас и выглядят одинаково, но в UTF-8 обычный пробел имеет вес в 1 байт, а неразрывный пробел — в 2 байта.
Ещё для примера:
" это 1 байт
« это 2 байта
это 3 байта
- это 1 байт
это 2 байта
это 3 байта

2. В оформлении текста на Фанфиксе мы все используем BBCode — те самые любимые всеми теги с квадратными скобками. Каждый из этих тегов тоже имеет вес. К примеру стандартная для нас конструкция [b.][./b] (за исключением точек, ессно) — весит 7 байт.

Следовательно, окончательный вес текста зависит от символов, напечатанных в тексте и их разметке — курсив это, полужирный шрифт или зачёркнутый — всё это влияет на информационный вес текста.

Вероятно, здесь есть ещё подводных камней, но об этом знает Реф.
Показать полностью
FluktLight
BrightOne
Кириллица идет по два байта...
Обычно.
Без всяких извращений.
Потому что правильнее смотреть не на количество слов, а на количество знаков
ArtChaos
Благодарю за подробное разъяснение!

Гламурное Кисо
Да, верно, знаков получилось больше.
ПОИСК
ФАНФИКОВ









Закрыть
Закрыть
Закрыть