24小时热门版块排行榜    

查看: 5843  |  回复: 16

digghost

木虫 (著名写手)

[交流] 【求助】Fortran 如何读取文件中特定行的内容 已有7人参与

现有一个文件,是100列,300万行的矩阵,我想读特定行,例如300行的数据,请问应如何用fortran处理
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

呵呵了
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

nono2009

超级版主 (文学泰斗)

No gains, no pains.

优秀区长优秀区长优秀区长优秀区长优秀版主


resonant(金币+1):信息费:-) 2010-06-23 16:40:05
以前本版好像讨论过类似的问题,建议仔细找一找。
2楼2010-06-23 11:35:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangzhiguang

至尊木虫 (文坛精英)


余泽成(金币+1):谢谢参与应助! 2010-06-24 10:29:19
用do命令不就可以吗?
open(文件)
do I=1,3000000
    if (i==300) then
      do j=1,100     
          read(*,*) x
      end do
     exit
     end if   
end do
不知道,我是否正确的理解你的意思了。上面的程序中exit是为了避免在进行循环。

[ Last edited by zhangzhiguang on 2010-6-24 at 12:14 ]
好好学习,天天向上!
3楼2010-06-24 09:49:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hrzhou

铁杆木虫 (著名写手)

一品黄梅


余泽成(金币+1):谢谢参与应助! 2010-06-27 14:57:56
先用DO循环跳过前299行,再读取第300行不就得了?
4楼2010-06-27 13:10:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

csyky2007

木虫 (著名写手)


余泽成(金币+1):谢谢参与应助! 2010-06-27 14:58:09
在彭国伦的书中第九章讲到,文件有顺序访问和直接访问,采用直接访问的话,你这个问题就可以高效的解决掉了。(彭国伦的书在这个论坛上有)
如果每一行数据的长度是x,那么你采用直接访问的手段,从299x+1读到300x,就读出第300行的数据了。
求放心!
5楼2010-06-27 14:29:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

digghost

木虫 (著名写手)

nono2009:建议“引用回复该帖”,以便别人能收到你回复的提示。 2010-06-29 16:27:03
我的意思是不用do循环,直接读指定行数的数据,因为我要算每一列得自相关函数,就是求第一行与第二行的点积,加上第二行第三行的点积-----第300万,第300万+1的点积,然后平均,得到一个时间步长的自相关函数,求第1行与第3行的点积,加上第2行第4行的点积-----第300万,第300万+2的点积,然后平均,得到两个时间步长的自相关函数值,依次类推,求第500个自相关函数值.所以用do的方法肯定不行.楼上的方法没明白,能给个语句么?
呵呵了
6楼2010-06-29 16:21:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangzhiguang

至尊木虫 (文坛精英)


余泽成(金币+1):谢谢参与应助! 2010-06-29 19:17:53
open(unit=10, file=filename, access="direct", form="formatted", recl=几, tatus="old"
read(10, fmt="(格式)", rec=想要的行数, IOSTAT=error)  x
其中“recl=几”是你要读文件的每一行的字符数,如果是文本文件,则要在相应字符数上加2,你试一下吧
好好学习,天天向上!
7楼2010-06-29 18:51:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zzxin111

铜虫 (初入文坛)


resonant(金币+1):感谢参与,你怎么两年还是新虫啊,难道是马甲?... 2010-07-09 23:02:27
彭国伦编的书fortran95程序设计中有,你看一下就知道了
8楼2010-07-02 19:57:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lifang2009

银虫 (小有名气)


resonant(金币+1):感谢参与 2010-07-09 23:02:57
六楼的方法应该可行
9楼2010-07-09 13:34:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

digghost

木虫 (著名写手)

余泽成:建议楼主引用回帖! 2010-07-13 20:57:44
请问字符数是什么意思,空格也算么
呵呵了
10楼2010-07-13 14:35:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 digghost 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 朋友圈看到的 +4 wangzilk 2026-08-18 5/250 2026-08-18 19:25 by wangzilk
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +51 医学老男孩 2026-08-13 110/5500 2026-08-18 19:07 by icerianxia
[基金申请] 明天放榜? +5 Shxjjxjkx 2026-08-18 5/250 2026-08-18 18:14 by -大大大大大-
[基金申请] 时间戳变了,能看出什么问题? +8 基诺咪客 2026-08-17 11/550 2026-08-18 17:13 by 悠然熊猫
[基金申请] 重要消息,中午系统在维护 +9 yuleib84 2026-08-18 10/500 2026-08-18 16:52 by archvillain
[论文投稿] 投稿咨询 +4 wwm09 2026-08-17 6/300 2026-08-18 15:36 by wwm09
[基金申请] 时间戳又变了8-15 +14 archvillain 2026-08-15 26/1300 2026-08-18 13:37 by phantomgost
[基金申请] 今天维护系统维护 祝所有人 高中 +8 gjjjzhong 2026-08-18 9/450 2026-08-18 13:01 by 家与远方
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +13 Ldrop2023 2026-08-13 16/800 2026-08-18 12:25 by 淀粉搬运工
[基金申请] 2027广东省杰青 +3 奶牛小黑 2026-08-15 8/400 2026-08-18 11:47 by gltch
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +4 Tide man 2026-08-14 5/250 2026-08-18 11:35 by Tide man
[基金申请] 93BebMhtakh前后11位开头都是大写 +4 且听虎啸 2026-08-17 5/250 2026-08-18 00:49 by 蔡棒棒菂
[基金申请] 感觉是下周放榜了 +6 angus9576 2026-08-17 11/550 2026-08-17 23:57 by angus9576
[基金申请] filecode=后面第一个是大写字母 +8 wangze12014 2026-08-14 10/500 2026-08-17 17:05 by xter9665
[基金申请] 今天系统多次维护,明天很可能放榜! +8 zju2000 2026-08-16 9/450 2026-08-17 12:20 by lmz0216
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +7 启萌科技 2026-08-12 26/1300 2026-08-16 12:35 by 启萌科技
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] Filecode 又变了,巨变 +3 WH3796 2026-08-12 4/200 2026-08-13 14:13 by 小木虫6752397
信息提示
请填处理意见