Skip to content

Instantly share code, notes, and snippets.

@b4tman
Last active August 14, 2020 11:56
Show Gist options
  • Save b4tman/d83a5d9f1988aae7fa671a2b4f0987dd to your computer and use it in GitHub Desktop.
Save b4tman/d83a5d9f1988aae7fa671a2b4f0987dd to your computer and use it in GitHub Desktop.
Функция СтрокаРазмераФайла(Знач Размер)
ПредставленияПорядков = СтрРазделить("байт,КБ,МБ,ГБ,ТБ,ПБ,ЭБ", ",");
Порядок = Цел(Log10(Размер) / Log10(1024));
Порядок = Мин(Порядок, ПредставленияПорядков.Количество() - 1);
Результат = Размер / Pow(1024, Порядок);
ФорматнаяСтрока = ?(Результат = Цел(Результат), "", "ЧДЦ=1");
Результат = СтрШаблон("%1 %2", Формат(Результат, ФорматнаяСтрока), ПредставленияПорядков[Порядок]);
Возврат Результат;
КонецФункции
метод СтрокаРазмераФайла(Размер: Число): Строка
пер ПредставленияПорядков = "байт,КБ,МБ,ГБ,ТБ,ПБ,ЭБ".Разделить(",")
пер Порядок = (Log10(Размер) / Log10(1024)).ЦелаяЧасть()
Порядок = Мин(Порядок, ПредставленияПорядков.Размер() - 1)
пер РезультатЧисло = Размер / Pow(1024, Порядок)
если РезультатЧисло != РезультатЧисло.ЦелаяЧасть()
РезультатЧисло = РезультатЧисло.Округлить(1)
;
пер Результат = "%РезультатЧисло %{ПредставленияПорядков[Порядок]}"
возврат Результат
;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment