主题:[原创]字符和数值之间的转换
最简单的方法是用内部文件,即用字符变量作为文件。
下面程序段读取系统时间,存入字符变量now,再将now的时分秒转换为整数值读出。
program TimeNow
character*8 :: now
integer :: hh,mm,ss
call time (now) ! 读系统时间
write(*,*) now ! 写出时间字符串
! 用字符变量now作为内部文件,从中将时、分、秒作为整数读出
read(now,"(I2,1x,I2,1x,I2)") hh,mm,ss ! 字符转换为
write(*,*) hh,mm,ss ! 写出时、分、秒的整数值
stop
end program TimeNow
屏幕输出例:
01:35:05
1 35 5
数值转换为字符是类似的,用写语句即可:
write(now,"(2I1,1H:,I2,1H:,2I1)") 0,1,35,0,5
下面程序段读取系统时间,存入字符变量now,再将now的时分秒转换为整数值读出。
program TimeNow
character*8 :: now
integer :: hh,mm,ss
call time (now) ! 读系统时间
write(*,*) now ! 写出时间字符串
! 用字符变量now作为内部文件,从中将时、分、秒作为整数读出
read(now,"(I2,1x,I2,1x,I2)") hh,mm,ss ! 字符转换为
write(*,*) hh,mm,ss ! 写出时、分、秒的整数值
stop
end program TimeNow
屏幕输出例:
01:35:05
1 35 5
数值转换为字符是类似的,用写语句即可:
write(now,"(2I1,1H:,I2,1H:,2I1)") 0,1,35,0,5