24小时热门版块排行榜    

查看: 3105  |  回复: 23

shixha

银虫 (小有名气)

[求助] fortran两个问题,文件中的空格,屏幕同一行覆盖输出

问题一,在文件总如下的数据,怎么读?可以用read(10,*)实现,但我前面还有字符串,所以怎么用格式控制符读取?
2888 1 0.0537094 0.3042080 0.2281860
9269 1 0.1542730 0.3637710 0.0239597
26883 1 0.4948280 0.3128810 0.2175420
15665 1 0.1308460 0.0832195 0.0741127
1513 1 0.4120060 0.4771680 0.1658080
17079 1 0.1477880 0.1364340 0.1343700

问题二,如何实现屏幕同一行覆盖输出?
如先输出
100 30%
然后输出200 31%,覆盖前面的内容,在同一行
回复此楼

» 猜你喜欢

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

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

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

★ ★
微尘、梦想(金币+2): 谢谢参与应助! 2011-05-07 21:42:02
shixha(金币+2): 2011-05-08 00:09:20
第一个问题你没有说清楚,所以不知道你要干什么,至少应该给出数据,及你想要的结果……

第二个问题,可以试一下下面的代码:
CODE:
program test

   character(len=20) :: a, b
   character*1 creturn ! code::
   
   a = '100 30%'
   b = '200 31%'
   creturn = achar(13) ! generate carriage return
   
   write( * , '(a,a)' , advance='no' ) creturn , a
   write( * , '(a,a)' , advance='no' ) creturn , b
   
end program test

» 本帖已获得的红花(最新10朵)

2楼2011-05-07 18:12:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shixha

银虫 (小有名气)

引用回帖:
Originally posted by snoopyzhao at 2011-05-07 18:12:15:
第一个问题你没有说清楚,所以不知道你要干什么,至少应该给出数据,及你想要的结果……

第二个问题,可以试一下下面的代码:

[code]
program test

   character(len=20) :: a, b
   character*1 cret ...

试了下,成功了,为什么用ascii的回车,这样就可以使指针回到屏幕行头嘛?不是很理解。


第一个问题是这样的,我想从文件中导入数据,到数组中。文件的结构如下,5列,前面两个是integer的,后面三个是real的,real数据可能小数位数不一致,如何读取,能够用格式控制符实现,不要用read(10,*)

25103 1 0.436324 0.100938 0.0298728
2888 1 0.0537094 0.304208 0.228186
9269 1 0.154273 0.363771 0.0239597
26883 1 0.494828 0.312881 0.217542
15665 1 0.130846 0.0832195 0.0741127
1513 1 0.412006 0.477168 0.165808
17079 1 0.147788 0.136434 0.13437
23869 1 0.0371001 0.0639775 0.0341563
29274 1 0.131698 0.478297 0.14099
783 1 0.388908 0.340938 0.0679263
.......................
3楼2011-05-07 22:15:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

引用回帖:
Originally posted by shixha at 2011-05-07 22:15:47:
试了下,成功了,为什么用ascii的回车,这样就可以使指针回到屏幕行头嘛?不是很理解。


第一个问题是这样的,我想从文件中导入数据,到数组中。文件的结构如下,5列,前面两个是integer的,后面三个是rea ...

都要,还是只要后面三列……
4楼2011-05-07 22:20:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

引用回帖:
Originally posted by shixha at 2011-05-07 22:15:47:
试了下,成功了,为什么用ascii的回车,这样就可以使指针回到屏幕行头嘛?不是很理解。


第一个问题是这样的,我想从文件中导入数据,到数组中。文件的结构如下,5列,前面两个是integer的,后面三个是rea ...

既然小数点位数可能不一样,如何格式化读取呢?如果你的数据不是按特定格式的话,就不可能格式化读取。

通常采用的办法就是用字符串和内部文件结合在一起处理,这样可能比较快一些……

其实 read(10,*) 挺好啊,把所有的数先用 real 读入,然后你再折腾就好了……
5楼2011-05-07 22:27:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shixha

银虫 (小有名气)

引用回帖:
Originally posted by snoopyzhao at 2011-05-07 22:27:38:
既然小数点位数可能不一样,如何格式化读取呢?如果你的数据不是按特定格式的话,就不可能格式化读取。

通常采用的办法就是用字符串和内部文件结合在一起处理,这样可能比较快一些……

其实 read(10,*)  ...

我是用格式化和read(10,*)交替读取的,感觉太冗长了,因为周期性出现字符串的,非常感谢!!!
6楼2011-05-08 00:25:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

引用回帖:
Originally posted by shixha at 2011-05-08 00:25:14:
我是用格式化和read(10,*)交替读取的,感觉太冗长了,因为周期性出现字符串的,非常感谢!!!

你上面给出的数据中没有字符串啊……
7楼2011-05-08 07:22:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)

【答案】应助回帖

★ ★
微尘、梦想(金币+2): 谢谢参与应助! 2011-05-09 17:41:30
我想是不是可以这样
CODE:
read(10, '(A, X, A)') str, data
read(data,*) your, datas

8楼2011-05-08 08:51:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

引用回帖:
Originally posted by shixha at 2011-05-07 22:15:47:
试了下,成功了,为什么用ascii的回车,这样就可以使指针回到屏幕行头嘛?不是很理解。


第一个问题是这样的,我想从文件中导入数据,到数组中。文件的结构如下,5列,前面两个是integer的,后面三个是rea ...

ascii 的回车,表示 Go to the beginning of the current line,所以,利用这一特性,可以模拟你的要求,呵呵……
9楼2011-05-08 10:12:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

引用回帖:
Originally posted by holmescn at 2011-05-08 08:51:16:
我想是不是可以这样
CODE:
read(10, '(A, X, A)') str, data
read(data,*) your, datas


这个要求 str 的长度要固定,否则会出问题……
10楼2011-05-08 10:16:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 shixha 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[博后之家] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 Aj1rhIDL5ixY 2026-09-14 4/200 2026-09-16 22:16 by Tql5LQhh5rLK
[考研] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +5 Aj1rhIDL5ixY 2026-09-14 5/250 2026-09-16 21:39 by MHf40yA0Uhyb
[公派出国] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 40ms4Wlo4umh 2026-09-14 3/150 2026-09-16 21:26 by MHf40yA0Uhyb
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 23jxep3nCNZb 2026-09-14 3/150 2026-09-16 21:14 by MHf40yA0Uhyb
[博后之家] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +8 QUjhNVAcOSff 2026-09-13 9/450 2026-09-16 18:36 by rRvxEj3zorCy
[考博] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +7 QUjhNVAcOSff 2026-09-13 7/350 2026-09-16 14:36 by i3KBRD19ERkG
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +4 QUjhNVAcOSff 2026-09-13 6/300 2026-09-16 14:27 by i3KBRD19ERkG
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 Aj1rhIDL5ixY 2026-09-14 4/200 2026-09-16 07:48 by i0IGWqQuchto
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +3 Aj1rhIDL5ixY 2026-09-14 3/150 2026-09-16 07:12 by LH5NkK5Ud4bh
[博后之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 s3fFTmArrBt6 2026-09-14 4/200 2026-09-16 04:27 by DgNGHc3h5tPl
[硕博家园] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +4 s3fFTmArrBt6 2026-09-13 6/300 2026-09-16 03:50 by DgNGHc3h5tPl
[公派出国] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +4 s3fFTmArrBt6 2026-09-13 6/300 2026-09-16 03:35 by DgNGHc3h5tPl
[考博] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +5 3n8v2C8RimXI 2026-09-13 5/250 2026-09-16 02:50 by DgNGHc3h5tPl
[考博] 申博发邮件 +4 Lmengk 2026-09-15 4/200 2026-09-16 00:05 by 木心想继续深造
[公派出国] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 Aj1rhIDL5ixY 2026-09-14 3/150 2026-09-15 19:59 by CgyNCDVNhGVg
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 s3fFTmArrBt6 2026-09-14 5/250 2026-09-15 16:35 by CgyNCDVNhGVg
[公派出国] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 6F5UbRU2I5hL 2026-09-14 3/150 2026-09-15 08:58 by C79jjtjAKjEn
[教师之家] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +4 s3fFTmArrBt6 2026-09-13 4/200 2026-09-15 07:02 by 5BDX0d0WFp7t
[教师之家] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 LwdutQ8HoqWP 2026-09-13 4/200 2026-09-14 16:13 by Aj1rhIDL5ixY
[考博] 西北工业大学材料学院电化学传感与催化课题组招收2027年推免研究生、博士生、博士后 +3 马方园 2026-09-10 4/200 2026-09-14 09:29 by Chem张zz
信息提示
请填处理意见