24小时热门版块排行榜    

查看: 2598  |  回复: 12
当前主题已经存档。

wlscxf

铜虫 (小有名气)

[交流] 【求助】FORTRAN90 建文件怎么用变量作文件名?【已完成】

请教:用FORTRAN编程时在一个 DO 循环中要 open 文件,想用变量做文件名,该怎么实现?
程序如下:
do i=1,n
     open(i, 'file_i',status="unknown"
     write(i,*)a,b,c
end do
假定其中的变量都已经合法声明过。
也就是说在循环中要创建n个不同的文件,其中文件名 ‘file_i’ 想以 i 区分,该怎么命名呢?写成 ‘file_i’ 好像不行啊。
请达人指教,谢谢。

[ Last edited by wlscxf on 2009-8-28 at 21:34 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qingyun533

铁杆木虫 (著名写手)

★ ★ ★
csfn(金币+1,VIP+0):thx very much 欢迎常来交流 8-26 10:33
wlscxf(金币+2,VIP+0): 8-26 18:15
定义字符数组即可
2楼2009-08-25 22:47:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tjyl

金虫 (正式写手)

★ ★ ★ ★ ★ ★
csfn(金币+3,VIP+0):thx very much 欢迎常来交流 8-26 10:33
wlscxf(金币+3,VIP+0): 8-26 18:15
用内部文件,就LS说的那样。

另外,其实输出文件可以不先open的。

直接wirte(x,*)  ...
会输出为fort.x 这样的文件。
或许这样更简单,输出文件就是ifort.x(X=N1:N2)

[ Last edited by tjyl on 2009-8-27 at 09:27 ]
3楼2009-08-26 00:19:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

stred

至尊木虫 (文坛精英)

蓝翔技校优秀毕业生

祝福楼主啊
耕读苍冥水静待老山秋
4楼2009-08-26 02:32:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wlscxf

铜虫 (小有名气)

谢谢, 先试一下,回头再来送金币!
5楼2009-08-26 09:49:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

黄胖胖

木虫 (正式写手)


wangen994(金币+1,VIP+0):欢迎参与讨论 8-28 11:11
可以采用系统时间来定义文件名,先调用日期函数,然后转成字符串后赋给文件名就可以了.
6楼2009-08-26 16:09:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lovserran

新虫 (初入文坛)

学习咯!试过2L的办法,确实挺好
to be nature
7楼2009-08-26 18:10:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wlscxf

铜虫 (小有名气)

wangen994(金币+0,VIP+0):你可以直接给二楼发站内信 8-27 08:43
引用回帖:
Originally posted by tjyl at 2009-8-26 00:19:
用内部文件,就LS说的那样。

另外,其实输出文件可以不先open的。

直接wirte(x,*)  ...
会输出为ifort.x 这样的文件。
或许这样更简单,输出文件就是ifort.x(X=N1:N2)

麻烦能不能说的更详细些?我试了不行啊。
x是表示什么?需要事先声明吗?
我是想在一个循环中打开文件,所以文件名要不同。

我现在是用数组表示的,也就是1楼的方法,声明一个很长的数组:
character(len=2) a(1:50):/ '01', '02', '03', '04', '05', '06', ....,'50' /)
然后在循环中:
open(i, file=a(i))
觉得有些麻烦。

很期待2楼的详解,谢谢。
8楼2009-08-26 18:24:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tjyl

金虫 (正式写手)


小木虫(金币+0.5):给个红包,谢谢回帖交流
http://docs.sun.com/app/docs/doc/820-1204/aeubm?a=view
引用回帖:
Originally posted by wlscxf at 2009-8-26 18:24:

麻烦能不能说的更详细些?我试了不行啊。
x是表示什么?需要事先声明吗?
我是想在一个循环中打开文件,所以文件名要不同。

我现在是用数组表示的,也就是1楼的方法,声明一个很长的数组:
character(len ...

9楼2009-08-27 09:28:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tjyl

金虫 (正式写手)

★ ★ ★ ★ ★ ★ ★
wlscxf(金币+2,VIP+0):谢谢! 8-27 19:28
wangen994(金币+5,VIP+0):哈哈,辛苦了,欢迎常来 8-28 11:11
http://bbs.pfan.cn/post-102851.html
引用比别人的现成的例子:

2. 如何用Fortran批量生成文件?
设要生成4000个文件,文件名为AA1-AA4000,如何写循环生成文件,而不用写4000次write命令呢?

用内部文件:
character(len=80) :: filename,form
integer :: i

do i=1,4000
   select case (i)
   case (1:9)
      write(form,'(i1)') i
   case (10:99)
      write(form,'(i2)') i
   case (100:999)
      write(form,'(i3)') i
   case (1000:9999)
      write(form,'(i4)') i
   end select
   write(filename,*) "AA",trim(form),".TXT" !这里就是让文件名为AAform.txt了
   open(10,file=filename)                           !你可以根据自己需要,设置文件名的规律
   write(10,*) i
   close(10)
end do   

stop
end

[ Last edited by tjyl on 2009-8-27 at 09:33 ]
10楼2009-08-27 09:31:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wlscxf 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[教师之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 ero8OE6tv9cu 2026-09-02 7/350 2026-09-03 13:20 by T0rGB46095mJ
[考研] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 ero8OE6tv9cu 2026-09-02 8/400 2026-09-03 13:20 by T0rGB46095mJ
[基金申请] 国社科又开始会评了,不知道这次命运如何 +10 雨打竹帘 2026-08-30 14/700 2026-09-03 13:17 by qsd10086
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 YLHlRHNwYkce 2026-09-02 8/400 2026-09-03 12:05 by T0rGB46095mJ
[教师之家] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 YLHlRHNwYkce 2026-09-02 8/400 2026-09-03 12:03 by T0rGB46095mJ
[基金申请] 麻烦专家们看看评委们的意见(F口面上) +8 gdd2018 2026-08-28 13/650 2026-09-03 06:22 by 羽毛枫f
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 ero8OE6tv9cu 2026-09-02 4/200 2026-09-03 03:14 by rM1TE0WVDIIY
[基金申请] 科研人应该花精力去思考如何解决问题,而不是去凝练问题 +7 瞬息宇宙 2026-09-01 14/700 2026-09-02 17:33 by ma0526
[基金申请] 要骂人了,新模版改版就是要淡化问题凝练这种虚的东西,结果有个评委还在说凝练得不够 +9 瞬息宇宙 2026-08-31 17/850 2026-09-02 14:04 by anjeeshine
[基金申请] 基金系统什么内容也没有 30+4 winsaint 2026-08-27 10/500 2026-09-02 11:35 by 大不刘6
[基金申请] 学科评审组评审是指会评吗? +5 瞬息宇宙 2026-08-31 5/250 2026-09-02 10:13 by 雨冰共舞
[基金申请] 面上函评意见出来了,像什么等级? 20+4 Tsingking1 2026-08-27 17/850 2026-09-01 19:51 by 超级无敌华子
[论文投稿] 小白求助 投论文要求的highlights应该如何写 5+3 l1963982152 2026-08-29 4/200 2026-09-01 09:04 by 北京莱茵编辑
[基金申请] 面上意见出来了 +12 黄鸟于飞Chao 2026-08-29 23/1150 2026-08-31 18:57 by 黄鸟于飞Chao
[基金申请] 中青基了要发朋友圈吗? +7 349506619 2026-08-28 7/350 2026-08-31 13:39 by 冼亮淀粉酶
[基金申请] 29号明天会评吗 +4 笨笨唐 2026-08-28 4/200 2026-08-31 09:30 by huixian257
[基金申请] 为什么到现在没收到通知? +5 tannykie 2026-08-29 5/250 2026-08-30 21:05 by purplejack
[考博] 找导师 +6 yuanjiabao 2026-08-29 7/350 2026-08-30 14:40 by 生科新手
[基金申请] 我就是申请一个面上项目而已,这评审意见是按照杰青的条件评的吧? +6 gouxfjh 2026-08-28 11/550 2026-08-30 07:57 by gouxfjh
[基金申请] 国自然评审意见 +13 wangmingqi 2026-08-28 19/950 2026-08-29 10:22 by Poppy1104
信息提示
请填处理意见