爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 3701|回复: 4

[求助] fortran read 长度变化 字符串数组

[复制链接]

新浪微博达人勋

发表于 2015-6-2 22:37:44 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
有个文件,每行写着不同长度的字符串,每行字符串都是以后一些文件的一部分
比如有文件写着:
SDER
EDFFGGG
ERTGFGHHH
ED
ERGG
...
然后后面要读进一个数组中a(n)(n为行数)
想a(1)=SEER,a(2)=EDFFGGG,...

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-6-2 22:47:58 | 显示全部楼层
用自由格式读入字符串后,用trim吧

评分

参与人数 1金钱 +20 贡献 +2 收起 理由
letsdo8 + 20 + 2

查看全部评分

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-6-2 22:49:34 | 显示全部楼层
trim()  函数移除字符串两侧的空白字符或其他预定义字符。
trim功能:除去字符串开头和末尾的空格或其他字符。函数执行成功时返回删除了string字符串首部和尾部空格的字符串,发生错误时返回空字符串("")。如果任何参数的值为NULL,Trim() 函数返回NULL。

评分

参与人数 1金钱 +20 贡献 +2 收起 理由
letsdo8 + 20 + 2

查看全部评分

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-6-3 09:55:40 | 显示全部楼层
直接用‘(A)’格式读入即可读入字符串的实际长度

do while(.true.)
read(unit, '(A)', iostat=stat)   a(i)
i=i+1
if(stat/=0) exit
……
end do
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-6-3 09:57:57 | 显示全部楼层
当然,在定义数组时还是要定义足够的长度,写入结果文件时还是像上一位讲的,trim()
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

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