Как преобразовать строку вида 2004-5-8 8:00:00 к виду 2004-05-08 12:00:00, т.е. что-бы месяц, день и час были двухразрядными?
>Как преобразовать строку вида 2004-5-8 8:00:00 к виду 2004-05-08 12:00:00, т.е. что-бы
>месяц, день и час были двухразрядными?Зависит от того, как ты получаешь эту одноразрядную запись.
Как самое простое решение - указать формат при формировании строки:YYYY-mm-dd ... и т.д.
-- SnaiL
>>Как преобразовать строку вида 2004-5-8 8:00:00 к виду 2004-05-08 12:00:00, т.е. что-бы
>>месяц, день и час были двухразрядными?
>
>Зависит от того, как ты получаешь эту одноразрядную запись.Получаю ее вот так:
$tm = localtime;
($DAY, $MONTH, $YEAR, $HOUR, $MIN) = ($tm->mday, $tm->mon, $tm->year, $tm->hour, $tm->min);>Как самое простое решение - указать формат при формировании строки:
>
>YYYY-mm-dd ... и т.д.А вот тут можно по подробнее
Не знаю, что это у Вас за язык такой)
В Си, например, есть функция strftime, которой передается формат даты, которую хотим получить. Может быть и у Вас есть что-то такое.
>Не знаю, что это у Вас за язык такой)
>В Си, например, есть функция strftime, которой передается формат даты, которую хотим
>получить. Может быть и у Вас есть что-то такое.Пишу я на perl
>>Не знаю, что это у Вас за язык такой)
>>В Си, например, есть функция strftime, которой передается формат даты, которую хотим
>>получить. Может быть и у Вас есть что-то такое.
>
>Пишу я на perlЕсли на перл, то может быть что-то типа:
my $time_stamp = &format_time;
print "$time_stamp\n";sub format_time {
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdaylightsav) = localtime;
$year = substr $year,2,2; # 2 digit year
sprintf "%02i%02i%02i %02i%02i%02i", $year,$mon,$mday,$hour,$min,$sec;
}-- По мотивам Google...
>>Как самое простое решение - указать формат при формировании строки:
>>
>>YYYY-mm-dd ... и т.д.
>
>А вот тут можно по подробнеекак вариант:
my $date = `date +"%Y-%m-%d %H:%M:%S"`;
>>>Как самое простое решение - указать формат при формировании строки:
>>>
>>>YYYY-mm-dd ... и т.д.
>>
>>А вот тут можно по подробнее
>
>как вариант:
>my $date = `date +"%Y-%m-%d %H:%M:%S"`;А вот за это спасибо, пока устраивает, но хотелось бы средставами perl
>>как вариант:
>>my $date = `date +"%Y-%m-%d %H:%M:%S"`;
>
>А вот за это спасибо, пока устраивает, но хотелось бы средставами perl
>my ($sec, $min, $hours, $day, $month, $year) = localtime();
printf ("%02d:%02d:%02d %02d/%02d/%04d\n",$hours,$min,$sec,$day,$month+1,$year+1900);
>my ($sec, $min, $hours, $day, $month, $year) = localtime();
>printf ("%02d:%02d:%02d %02d/%02d/%04d\n",$hours,$min,$sec,$day,$month+1,$year+1900);или соответственно для сохранения в переменную
my ($sec, $min, $hours, $day, $month, $year) = localtime();
my $date = sprintf ("%02d:%02d:%02d %02d/%02d/%04d\n",$hours,$min,$sec,$day,$month+1,$year+1900);
в перле естьuse POSIX qw(strftime);
$now_string = strftime "%H:%M:%S %e.%m.%y", localtime;
вообще man strftime и там "%H:%M:%S %e.%m.%y" подробнее описанно можно делать с этим все что угодо опций очень много хотя я паралельно использую
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time);
и
use POSIX qw(strftime);
$now_string = strftime "%H:%M:%S %e.%m.%y", localtime;