作者snowanimal (依然动物先生)
看板Fortran
标题Re: [请益] 用fortran 读取 csv档案
时间Sun Jan 11 12:55:43 2009
※ 引述《janhon (海)》之铭言:
: 2007/1/10,宜兰,XX,71.78,72.49,73.37,72.57,74.27,78.46,84.05,85.66,85.94,86.2,84.05,82.49,83.54,84.42,84.18,85.2,87.46,88.62,89.2,89.68,90.03,90.37,90.63,90.73
: 2007/1/10,宜兰,YY,3.6,4.9,4.9,5,3.5,4.6,2.5,3.3,4.1,3.3,2.9#,3#,3.4#,3.2,2.2
: 2007/12/13,宜兰,XX,85.73,84.6,83.62,82.1,82.04,85.1,87.8,84.85,85.39,88.94,91.76,86.08,82.04,80.83,80.93,81.63,82.92,83.56,82.3,83.98,82.92,80.02,83.29,83.61
: 2007/12/13,宜兰,YY,3.4,1.9,2.5,1.8,2.2,2.2,2.5,3.2,3.9,3.6,3.6,4,4.2,4.1,4.4,4.1,3.6,3.9,4.6,5.2,5.3,5.3,5.3,5.8
: 欲用fortran读取上述csv档案,因为字元数目都不同,format无法固定
: 除了使用字元读入,自己慢慢拆解外,请问是否还有其他比较好的读取方法
叭~~我猜这你一定是气象相关科系的人吼~
上面的字串就是所谓的气象电码,根据以往的经验给你个提示...
用 if判别 "," 接着将每一样资料都重新写成设定好的格式。
因为你所有的参数都是利用 "," 分隔开来所以只要依序读每个字元,
读到逗号就视做是资料即可啦!
至於#的问题...用字元取代法噜。
老实说,用excel的巨集搭配另存新档或许就不必这麽辛苦。
拆解字元这个用do loop读一整行回来一个字一个字拆其实一点也不慢啦。
先建立一个每个资料的表,主程式去读他就很快了。
同为曾经是相关科系的死人替你加油。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.124.102.221
※ 编辑: snowanimal 来自: 122.124.102.221 (01/11 12:57)
1F:→ blc:话说电码不是长这样… 01/11 18:11
2F:推 meteorology:似乎不是长这样 他们会有格式 方便FORTRAN好读 01/11 22:12
3F:→ snowanimal:当初手边拿到的格式跟这个几乎没差别 一样乱 01/12 00:00
4F:→ snowanimal:年代久远 印象中数字一整串还是要重新读过才能用 01/12 00:01