24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 1613  |  回复: 12

xiaomm09

金虫 (小有名气)

[求助] 请教一个C++读文件的问题,

最近用C++写一段读文件的代码,遇到2个问题:
1)如果开头的几行不需要读写,该怎么跳过?
2)如果文件的格式固定(见附件),每行中的数字占的宽度一样,如
AAAA           1       09.0000003.000000     0.0       0               0        
AAAA           2       012.00000          0.0     0.0       0               0        
AAAA           3       06.000000          0.0     0.0       0               0
上面几行,每一行8个数字,但第3、4、5个数字中间无空格,即连在一起,该怎么处理?以第一行为例,8个数字分别为 AAAA             1       0    9.000000   3.000000     0.0       0         0。
这个问题困扰了好几天了,请大家指教,先谢谢了,
回复此楼

» 猜你喜欢

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

追求完美!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

heyzol

金虫 (正式写手)

请教一个C++读文件的问题,

如果想跳过n行的话,执行n次getline就行了
小木虫:沙发+99,金币+99,恭喜抢个沙发,再给个红包
9楼2013-11-27 14:28:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cjc5367

铁虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
开头几行不读写:设置一个计数变量,每读一行加一,当到指定行数时读写
2楼2013-11-26 22:43:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiaomm09

金虫 (小有名气)

引用回帖:
2楼: Originally posted by cjc5367 at 2013-11-26 22:43:49
开头几行不读写:设置一个计数变量,每读一行加一,当到指定行数时读写

谢谢。
第一个问题好像原来讨论过,就是让这几行跑空。

第二个问题呢,有好的方法吗?
追求完美!
3楼2013-11-26 23:04:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

cjc5367

铁虫 (小有名气)

【答案】应助回帖

如果数据的宽度一样,第二个问题可以先把每行读取完后,存放为一个string类型,再对其进行split,再对split后的第三个数据进行substring读取
4楼2013-11-26 23:12:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiaomm09

金虫 (小有名气)

引用回帖:
4楼: Originally posted by cjc5367 at 2013-11-26 23:12:00
如果数据的宽度一样,第二个问题可以先把每行读取完后,存放为一个string类型,再对其进行split,再对split后的第三个数据进行substring读取

谢谢,
暂时也是这样处理的,strg.substr(0, 7)。。。。
好像不能像fortran那样的切片功能?直接strg[0:7],strg[8:15].。。
用read,write 或指针 这些功能 是不是会更好些?
追求完美!
5楼2013-11-26 23:20:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cjc5367

铁虫 (小有名气)

引用回帖:
5楼: Originally posted by xiaomm09 at 2013-11-26 23:20:44
谢谢,
暂时也是这样处理的,strg.substr(0, 7)。。。。
好像不能像fortran那样的切片功能?直接strg,strg.。。
用read,write 或指针 这些功能 是不是会更好些?...

很长时间不用c++了,具体string的函数都忘了,能解决就行啊
6楼2013-11-26 23:44:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

nlyang

禁虫 (著名写手)

感谢参与,应助指数 +1
本帖内容被屏蔽

7楼2013-11-27 09:02:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiaomm09

金虫 (小有名气)

引用回帖:
7楼: Originally posted by nlyang at 2013-11-27 09:02:03
这真的是一个非常简单的问题,呵呵。
第一个问题就是直接路过,用一个for循环即可。
至于第二个问题,其实就是一个处理规则的问题,从你所给出的文件来看,3,4,5的三个数字,似乎有时候粘在一起,有的时候又没有 ...

楼上说的对,3、4、5的三个数字,有时候粘在一起,有的时候又没有在一起,但不管如何,每个数字占的宽度都一样,即8位。
数据处理完后,会输出到文本中。

具体如何操作?
追求完美!
8楼2013-11-27 10:01:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

nlyang

禁虫 (著名写手)

本帖内容被屏蔽

10楼2013-11-27 21:28:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 xiaomm09 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 本科211,293分请求调剂 +8 莲菜就是藕吧 2026-04-03 9/450 2026-04-05 19:12 by 蓝云思雨
[考研] 385分 生物学(071000)求调剂 +11 qf626 2026-04-01 11/550 2026-04-05 17:35 by Ecowxq666!
[考研] 295求调剂 +10 xndjjj 2026-04-04 10/500 2026-04-05 11:19 by 猪会飞
[考研] 一志愿江南大学085501机械工程专硕326分,本科佳木斯大学 +5 顾若浮生 2026-04-03 9/450 2026-04-05 09:57 by 1753564080
[考研] 085602调剂 初试总分335 +12 19123253302 2026-04-04 12/600 2026-04-05 08:08 by 544594351
[考研] 278求调剂 +14 范婷娜 2026-04-04 15/750 2026-04-04 22:15 by lqwchd
[考研] 316求调剂 +9 墨辰_Orion926 2026-04-04 9/450 2026-04-04 21:35 by lbsjt
[考研] 本9一志愿2 0854低分专硕286求调剂 +9 芒种111 2026-04-04 9/450 2026-04-04 11:01 by tangruihua
[考研] 总分328生物与医药考数学求调剂 +7 aaadim 2026-04-02 9/450 2026-04-03 22:53 by syh9288
[考研] 311求调剂 +20 zchqwer 2026-04-01 22/1100 2026-04-03 22:09 by lglzsd
[考研] 学硕机械工程303求调剂 +6 无名所以叫吴明 2026-03-30 7/350 2026-04-03 16:48 by asdfzly
[考研] 338求调剂 +7 晟功? 2026-04-03 7/350 2026-04-03 16:46 by wxiongid
[考研] 338求调剂 +4 zzz,,r 2026-04-03 4/200 2026-04-03 16:39 by lijunpoly
[考研] 081200-11408-276学硕求调剂 +5 崔wj 2026-04-03 5/250 2026-04-03 15:06 by arrow8852
[考研] 315分 085602 求调剂 +15 26考研上岸版26 2026-04-02 15/750 2026-04-03 12:45 by xingguangj
[考研] 279求调剂 +5 傅文秋 2026-04-02 5/250 2026-04-02 18:10 by 笔落锦州
[考研] 一志愿北交大材料工程总分358 +8 cs0106 2026-04-01 9/450 2026-04-02 10:36 by 不吃魚的貓
[考研] 材料调剂 +11 一样YWY 2026-03-31 11/550 2026-04-01 22:25 by zhouyuwinner
[考研] 265求调剂 +11 yelck 2026-04-01 12/600 2026-04-01 19:12 by 549790059
[考研] 085601一志愿西北工业大学初试346 +4 085601初试346 2026-03-30 4/200 2026-03-31 07:47 by jp9609
信息提示
请填处理意见