fortran-时间的格式化输出
2017-12-03 11:04
169 查看
1 声明部分
2 输出时间格式生成
3 输出
implicit none real :: read_null # 用于读取时跳过输入文件中不需要的列 integer :: leap_year # 用于判断是否为闰年。 0是平年;1是闰年 integer,allocatable :: year(:), month(:), day(:), hour(:) # 时间间隔为1小时debug
2 输出时间格式生成
# 输出的时间格式生成,起始时段为净雨量文件中的起始时段 allocate(year(size(Q)),month(size(Q)),day(size(Q)),hour(size(Q))) ! 数组长度等于径流的长度 ! 读取初始时间 filename = trim(Address)//'\'//'data_rs.txt' open(10,file=filename,access='sequential',status='old') read(10,*) year(1),month(1),day(1),hour(1) close(10) do t=2,size(Q) leap_year = 0 ! 一般情况下,“小时”+1,而“日,月,年”不变,把它们放在后边处理 hour(t) = hour(t-1)+1 day(t) = day(t-1) month(t) = month(t-1) year(t) = year(t-1) !判断是否为闰年,确定二月的天数 if(mod(year(t),100)==0) then if(mod(year(t),400)==0) then leap_year = 1 end if else if(mod(year(t),4)==0) then leap_year = 1 end if end if ! 24时统一记为第二天0时 if(hour(t) == 24) then hour(t)=0 day(t) = day(t)+1 end if !超出一个月的最大天数,则计入下一个月 select case(month(t)) case(1,3,5,7,8,10,12) if (day(t)==32)then day(t) = 1 month(t)= month(t)+1 end if case(4,6,9,11) if(day(i)==31)then day(t) = 1 month(t)= month(t)+1 end if case(2) if(leap_year==1 .AND. day(t)==30)then day(t) = 1 month(t)= month(t)+1 elseif(leap_year==0 .AND. day(t)==29)then day(t) = 1 month(t)= month(t)+1 end if end select end do
3 输出
filename=trim(Address)//'\'//'output_path' open(10,file=filename) !write(10,"(5A6)") "year" ,"month", "day", "hour" ,"Q" do i=1,size(Q) write(10,"(4I5,F10.3)")year(i),month(i),day(i),hour(i),Q(i) end do close(10)
相关文章推荐
- 时间格式化输出strtime
- .Net日期时间格式化输出大全 DateTime.ToString(?)
- GridView控件常见问题及处理方法===1. 关于隐藏字段的处理:==2. 关于按钮列的事件:==3. 关于按钮的客户端提示:==4. 关于时间字段的格式化输出:==5. 关于绑定空记录:
- Linux下date命令,格式化输出,时间设置
- informix日期时间格式化输出
- Java获取系统时间并格式化输出
- jstl格式化输出下午时间却显示成上午。
- Linux下date命令,格式化输出,时间设置
- js将当前时间日期格式化输出
- jsp日期时间格式化输出
- 用 struts2 <s:date> 标签 格式化输出时间
- .Net日期时间格式化输出大全 DateTime.ToString()
- 格式化输出数字和时间
- java代码--Date类获取当前时间-格式化输出
- Linux下的时间函数以及格式化输出时间
- 格式化输出n天后的时间(java实现 )
- Qt获取当前时间并格式化输出及将积秒转换成时间
- 用CTime类得到当前日期、时间、星期,并格式化输出
- Jackson 时间格式化输入输出
- javascript扩展date对象格式化日期时间输出