Тема: AHK: Преобразование числа в размер в мегабайтах
Добрый день. Есть такое значение, -
"size":8306546,
которое должно конвертироваться в "7,9 МБ". По какому принципу оно закодировано?
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Добрый день. Есть такое значение, -
"size":8306546,
которое должно конвертироваться в "7,9 МБ". По какому принципу оно закодировано?
8306546/1024/1024=7,92173957824707
1srafel
;Для проверки: https://allcalc.ru/converter/megabytes-kilobytes
F2:: ; Для теста:
T=
Loop, 30{
Random, R, 0, 1234567890123
T .= R " >>> " FormatFileSize(R) "`n"
}
MsgBox, % T
Return
FormatFileSize(Size, R := 2){
Static T := ["Байт", "Кб", "Мб", "Гб", "Тб"], TM := T.Count()
I := 1
while( (size >= 1024) And (I < TM))
Size := (Size / 1024), I++
Return ARound(Size, R) " " T[i]
}
ARound(D, R := 2){ ; Число, Округление до N знаков после запятой.
Return RTrim(RTrim(Round(D, R),"0"), ".")
}
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться