24小时热门版块排行榜    

查看: 1307  |  回复: 26
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

qingkonggzc

银虫 (小有名气)

[求助] 望各路大神不吝赐教:不同文件夹下的文本内容的提取计算,文件较多 已有4人参与

说明:本人有7天的数据(数据存放在data_hav文件夹下),每天的数据占用一个文件夹(236,237,...,242,文件中均是.hav文件,见附图),我想依次打开存放每天数据的文件夹,对里面的测站内容进行提取运算,以图中G01(每天每个文本中都会出现)为例,计算方法是对每天所有测站中G01的(#have求和)除以(#reprt求和),即求个比列,7天可计算出7个比例值,并像这样将这7个数依次写在out.txt中,写成一行如 95  94  91  86  86 87 94,如果比列为0,就用NAN标识,如 95  94  91  86  86 87 NAN
下面是本人的一些问题和想法:
1)如何依次打开不同的文件夹?使用字符串替换文件名?
2)可先对每天文件夹里面的所有测站名进行提取(每天有多少测站不固定),存放到一个txt中,然后再根据txt依次打开文本对内容提取存放到数组中,需对G01—G32,C01—C14,R01—R24均如G01一样求个比列,然后一行行的写到out.txt中,数组该如何构造,如何提取数据呢?
3)使用type构造一个类似于结构体的数组存放数据?
本人刚接触Fortran,很多东西都不会,这个问题已经困扰本人好几天了,不知该如何下手,望各路大神予以指导,方便的话还请写几行代码给予参考,谢谢~~~望各路大神不吝赐教:不同文件夹下的文本内容的提取计算,文件较多
7天数据.png


望各路大神不吝赐教:不同文件夹下的文本内容的提取计算,文件较多-1
每天数据里面的文本.png


望各路大神不吝赐教:不同文件夹下的文本内容的提取计算,文件较多-2
hav文件内容.png


望各路大神不吝赐教:不同文件夹下的文本内容的提取计算,文件较多-3
hav文件内容.png
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : data_hav.zip
  • 2015-05-24 21:27:42, 24.04 K

» 猜你喜欢

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

jiangxingge

金虫 (正式写手)

【答案】应助回帖

我觉得你的技术思路是可行的。
1,遍历所有文件的 问题。为了在FORTRAN中遍历,可以利用 SYSTEM 子程序 (可查看CVF帮助)
    由于你已知 236-242的文件夹名字,所以,可以建立一个数组,并把这些名字预先赋值(或者写在一个文本中再读取)
   character*200 pathname(7)
data pathname/'d:\DATA_HAV\236\','d:\DATA_HAV\237\',。。。。'd:\DATA_HAV\242\'

对 7天进行循环
循环中 ,首先提取这一天的 文件列表
   call sysytem(' DIR '//pathname(i)(1:16)//'*.hav   > a.txt') ! 16 是pathname中字符的长度
注意 :这句话 产生了 一个 a.txt 的文件 ,文件的 内容 像下面的样子
驱动器 D 中的卷没有标签。
卷的序列号是 0004-5856

d:\data_hav\242 的目录

2015/01/29  09:41             4,316 chdu2370.hav
2015/01/29  09:41             4,316 gua12370.hav
               2 个文件          8,632 字节
               0 个目录 85,285,617,664 可用字节

然后 你读取 这个文件,就可以 得知 这一天的 所有文件名,当然也知道 这一天 有几个文件。于是 就可以对每一个 文件进行操作。
11楼2015-06-05 15:36:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 27 个回答

qingkonggzc

银虫 (小有名气)

恳请各位大神给点帮助意见
2楼2015-05-25 10:23:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jerkwin

专家顾问 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
用shell吧, 别折腾fortran了
3楼2015-05-26 01:10:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ihnlaoyao

银虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
用Python吧 遍历目录下的文件极其方便

[ 发自手机版 http://muchong.com/3g ]
4楼2015-05-26 09:51:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见