use Date::Calc qw/Add_Delta_Days/; my $delta = 72583; my ($year,$month,$day) = Add_Delta_Days(1800,12,28,$delta); $newdate = sprintf("%4d%02d%02d", $year, $month, $day); print "$newdate\n";