风花雪月 发表于 2007-5-31 10:00

字符和数值之间的转换(转贴)

最简单的方法是用内部文件,即用字符变量作为文件。

下面程序段读取系统时间,存入字符变量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

来自编程爱好者
页: [1]
查看完整版本: 字符和数值之间的转换(转贴)