Все правильно, число 0 при преобразовании в строку дает "0" И это не баг. Иначе 10 было бы "100" и тогда да это уже был бы баг.
Если нужно "00" то преобразуйте явно с добавлением "0" через условие, если длина строки равна 1 символу, или через функцию string.format("%02d", alltrade.datetime.min)
t = string.format ( "%02d:%02d" , alltrade.datetime.hour, alltrade.datetime.min)
Опечатка была.
тоже работает криво: 17:59 не отобразилось, 18:00 да сработало, а после первой минуты всё осталось по-прежнему интересно а почему не работает преобразование в минуты?
Код
t = string.format ( "%М" , alltrade.datetime.min)
Пробовал добавить ноль через условие, но код вызывает ошибку
Код
If string.len(alltrade.datetime.min)=2 then
t = tostring(alltrade.datetime.hour)..":"..tostring(alltrade.datetime.min);
Else
t = tostring(alltrade.datetime.hour)..":0"..tostring(alltrade.datetime.min);
end
Дмитрий, могу лишь предложить свой работающий вариант, от которого можно оттолкнуться.
Код
if string.len(Tl.hour) == 1 then Tl.hour = "0"..Tl.hour; end;
if string.len(Tl.min) == 1 then Tl.min = "0"..Tl.min; end;
if string.len(Tl.sec) == 1 then Tl.sec = "0"..Tl.sec; end;
Игорь Б написал: Дмитрий, могу лишь предложить свой работающий вариант, от которого можно оттолкнуться.
Код
if string.len (Tl.hour) = = 1 then Tl.hour = "0" .. Tl.hour; end ;
if string.len (Tl.min) = = 1 then Tl.min = "0" .. Tl.min; end ;
if string.len (Tl.sec) = = 1 then Tl.sec = "0" .. Tl.sec; end ;
Игорь Б написал: Дмитрий , могу лишь предложить свой работающий вариант, от которого можно оттолкнуться.
Код
if string.len (Tl.hour) = = 1 then Tl.hour = "0" .. Tl.hour; end ;
if string.len (Tl.min) = = 1 then Tl.min = "0" .. Tl.min; end ;
if string.len (Tl.sec) = = 1 then Tl.sec = "0" .. Tl.sec; end ;
Это просто ужас какой-то. ----------------------------------- У вас изначально таблица Ti содержит время в формате чисел. ---------------------------- Вы их превращаете для сравнения в строки, а потом записываете в виде строк в таблицу ---------------------- В итоге у вас для отображения времени в виде строки 6 раз вызывается преобразование числа в строку а потом вы еще и уничтожаете числа в таблице Ti, заменяя их строками ---------------------- Куча операций и дополнительной памяти чтобы вывести на экран строчку. ---------------------- Мазохизм какой-то