免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3061 | 回复: 12
打印 上一主题 下一主题

如何用perl语句得到日期列表 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-04-13 11:45 |只看该作者 |倒序浏览
需要两年的日期列表如下:
20080101
20080102
20080103
...
20080228
20080229
20080301
...

一条一条写太费时,而且太长,有没有办法用perl语句来实现,先谢了

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
2 [报告]
发表于 2009-04-13 12:02 |只看该作者
当然是循环了。一天是 24 小时。
你算出第一天的时间,然后循环,每次加 24 小时,然后再转换成你想要的格式就行了。

论坛徽章:
0
3 [报告]
发表于 2009-04-13 13:13 |只看该作者
恩  根据时间戳构造吧~~

论坛徽章:
1
白银圣斗士
日期:2015-11-23 08:33:04
4 [报告]
发表于 2009-04-13 13:17 |只看该作者
[root@localhost perl]# perl daylist.pl
2009-04-22
2009-04-21
2009-04-20
2009-04-19
2009-04-18
2009-04-17
2009-04-16
2009-04-15
2009-04-14
2009-04-13
[root@localhost perl]# cat daylist.pl
#!perl
use Date::Simple (':all');

my $DATE_START=today() -1;
my $MONTH;
my $DATE_END;

my $i_ = 10;
while ( $i_ >= 1 ){
my $date  = Date::Simple->new("$DATE_START");
$DATE_END=$date + $i_;
print "$DATE_END\n";
$i_--;
}
[root@localhost perl]#

论坛徽章:
0
5 [报告]
发表于 2009-04-13 14:50 |只看该作者

回复 #4 枫影谁用了 的帖子

C:\>./daylist.pl
Can't locate Date/Simple.pm in @INC (@INC contains: C:/Perl/site/lib C:/Perl/lib
.) at C:\daylist.pl line 2.
BEGIN failed--compilation aborted at C:\daylist.pl line 2.

C:\>
第二行是:
use Date::Simple (':all');
是Date::Simple不存在吗?  如何看Date::Simple是否存在?

论坛徽章:
0
6 [报告]
发表于 2009-04-13 15:03 |只看该作者
汗。。。装模块把。。

论坛徽章:
0
7 [报告]
发表于 2009-04-13 16:04 |只看该作者

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
8 [报告]
发表于 2009-04-13 16:52 |只看该作者
原帖由 xinganling 于 2009-4-13 14:50 发表
第二行是:
use Date::Simple (':all');
是Date::Simple不存在吗?

是的。
如何看Date::Simple是否存在?

直接用它,不存在的话 perl 会告诉你的。

论坛徽章:
0
9 [报告]
发表于 2009-04-13 17:21 |只看该作者
随便写几个for不久实现了吗?

论坛徽章:
0
10 [报告]
发表于 2009-04-13 17:28 |只看该作者
1 for($year = 2008;$year <= 2009 ;$year++){
      2         for($month = 1;$month <= 12;$month++){
      3                 for($day = 1;$day <= getMaxDay($year,$month);$day++){
      4                         print "$year-$month-$day\n";
      5                 }
      6         }
      7 }
      8
      9 sub getMaxDay() {
     10         return 30;#你自己写一个算法来算得当年当月有多少天即可
     11 }
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP