Fortran入门【3】写出CSV格式文件示例

使用Fortran写出CSV格式文件示例

    program main
    ! 使用Fortran写出CSV格式文件

    implicit none
    real, allocatable, dimension(:) :: x,y,z,u,v,w    !< 变量
    integer :: N               !< 变量长度
    integer :: i               !< 循环计数器
    integer :: fid = 20        !< 文件IO代号

    N = 5

    ! 赋值
    allocate( x(N), y(N), z(N), u(N), v(N), w(N) )
    do i = 1, N
        x(i) = i * 1.0
        y(i) = i * 2.0
        z(i) = i * 3.0
    end do
    u = x**2
    v = exp(y)
    w = sin(z)

    ! 输出文件
    open( fid, file= 'Output.csv' )
    do i = 1, N
        write( fid, '(*( G0.5, :, ",", X))') x(i), y(i), z(i), u(i), v(i), w(i)
    end do
    close(fid)
    
    deallocate( x, y, z, u, v, w )

    end program main

核心为文件格式:'(*( G0.5, :, ",", X))'

  • G0.5Gw.d形式。G表示任何类型都适用的通用编辑描述符;w为字符域宽,w=0表示不设置;d为保留有效数字的个数,d=5表示保留5位有效数字
  • :格式扫描控制符,控制着在write语句中最后一个变量输出后,剩余变量的格式,此处加入:可以避免文件每行行末出现逗号,
  • ","表示输出逗号,
  • XnX形式,即水平方向空n个格,此次单个X表示在右侧空1个格
  • *为无限循环,即不指定( G0.5, :, ",", X)输出多少次。

上述程序运行后,输出的Output.csv文件内容为:

1.0000, 2.0000, 3.0000, 1.0000, 7.3891, .14112
2.0000, 4.0000, 6.0000, 4.0000, 54.598, -.27942
3.0000, 6.0000, 9.0000, 9.0000, 403.43, .41212
4.0000, 8.0000, 12.000, 16.000, 2981.0, -.53657
5.0000, 10.000, 15.000, 25.000, 22026., .65029
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值