В спецификациях ECMA 119 (доступны бесплатно здесь) я я пытаюсь понять, как получить содержимое поля System Use
:
Как предполагается вычислить длину поля System Use
, то есть как значение LEN_SU
находится в левом столбце?
В спецификациях ECMA 119 (доступны бесплатно здесь) я я пытаюсь понять, как получить содержимое поля System Use
:
Как предполагается вычислить длину поля System Use
, то есть как значение LEN_SU
находится в левом столбце?
Значение LEN_SU
задается неявно. Из BP1 вы знаете общее количество байтов в записи каталога (LEN_DR
). Затем LEN_SU
задается (неявно) как байты, оставшиеся в записи каталога после 33+LEN_FI+possible_padding(1)
, где вы получаете длину LEN_FI
из BP33.
Следовательно
LEN_SU = LEN_DR - (33+LEN_FI+possible_padding(1))
Из спец.:
Поле заполнения [BP (34 + LEN_FI)]
Это поле должно присутствовать в записи каталога, только если число в поле длины идентификатора файла является четным числом.
Использование системы [BP (LEN_DR - LEN_SU + 1) до LEN_DR)
Это поле является необязательным. Если оно присутствует, это поле должно быть зарезервировано для использования системой. Его содержание не регламентируется настоящим стандартом. Если необходимо, чтобы запись каталога содержала четное число байтов, для завершения этого поля должен быть добавлен байт (00).