Fortran Coder

查看: 8110|回复: 2
打印 上一主题 下一主题

[文件读写] 关于写入文件数据格式问题求助

[复制链接]

8

帖子

4

主题

0

精华

入门

F 币
59 元
贡献
33 点
跳转到指定楼层
楼主
发表于 2015-1-28 17:19:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我对数据进行了一下处理,然后想把数据重新写出来。这里面数据有科学计数数据,这一列还有正常的整数,如果是4位就写4位整数,如果大于5位就用科学计数法计数。处理完数据我也想按照这种格式写出来。
50603  4842    11658    1.0563e+005      1963     12    31   0    0    0    0    0    0
50603  4840    11649     5542                  1964     1      1     0    0    0    0    0    0
我的代码我把带科学计数这一列用 real*4 :: c(19385),读出来的
[Fortran] 纯文本查看 复制代码
Program Watersave
   Implicit None
   Character *5 Filename
   Integer :: I, K, q
   Integer :: a(11,19358),b(19385)
   real*4 :: c(19385)

   open(10, file = "D:\a\preci.txt")
     do i = 1 , 83
     read(10, *) filename
         open(11, file = "D:\a\"//filename//".txt")
         do k = 1,19358
             read(11, *) a(1:3,k),c(k),a(4:8,k),b(k),a(9:11,k)
         end do
         open(12,file = "D:\c\"//filename//".txt")
         do q = 1, 19358
             if (30000<b(q) .and. b(q)<32700) then 
                 b(q) = mod(b(q),1000)
             elseif (b(q) == 32700) then
                 b(q) = 0
             else
                 b(q) = b(q)
             end if        
             write(12,"(3i6,e18.10,5i8,i6,3i3)")  a(1:3,q),c(k),a(4:8,k),b(q),a(9:11,q)
end do 
         close(12)
         close(11)
     end do
 end

如果这13列都是整数的话,写 write(12,"(13i6)")都可以正常写出来。但是这个文件写出来
50603  4842 11658  0.0000000000E+00       0       0       0****************     1  0  0  0
50603  4842 11658  0.0000000000E+00       0       0       0****************     0  0  0  0
50603  4842 11658  0.0000000000E+00       0       0       0****************     0  0  0  0
所以想请问一下,这个科学计数的文件该如何处理写出来吗?
   
分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

1963

帖子

12

主题

5

精华

论坛跑堂

臭石头雪球

F 币
1357 元
贡献
574 点

美女勋章热心勋章星光勋章新人勋章贡献勋章管理勋章帅哥勋章爱心勋章规矩勋章元老勋章水王勋章

沙发
发表于 2015-1-30 08:45:48 | 只看该作者
write(12,"(3i6,es18.10,5i8,i6,3i3)")  a(1:3,q),c(q),a(4:8,q),b(q),a(9:11,q)

8

帖子

4

主题

0

精华

入门

F 币
59 元
贡献
33 点
板凳
 楼主| 发表于 2015-1-30 20:49:40 | 只看该作者
好的,顺利解决
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-2 06:59

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表