| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付买域名,送MP3、MP4
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY买空间,免费送域名(厦门中资源)
共有 357 人关注过本帖
标题:【提问】怎样在读取文件时直接跳过行
收藏  订阅  推荐  打印 
子洋虾米
Rank: 2
来自:哈尔滨市第九中学
等级:注册会员
帖子:79
积分:944
注册:2008-9-15
【提问】怎样在读取文件时直接跳过行

比如以下文件

4
wangziyang 98 87 Y Y 1

怎样在读取时直接跳过第一行而读wangziyang 98 87 Y Y 1?
在PASCAL语言中可以使用readln语句,在C语言中怎样实现呢?谢谢。
搜索更多相关主题的帖子: 文件  提问  
2008-9-15 11:28
yxyhack
Rank: 1
等级:新手上路
帖子:10
积分:204
注册:2008-9-15

文件指针直接跳过第一个换行符就OK了。
2008-9-15 11:32
子洋虾米
Rank: 2
来自:哈尔滨市第九中学
等级:注册会员
帖子:79
积分:944
注册:2008-9-15

怎样实现呢
我有点迷惑了,能给出具体语句么?
还有一个问题,当我把那一行完整读入后,希望把每一个空格前的字段分别存储,怎样实现?

[ 本帖最后由 子洋虾米 于 2008-9-15 11:40 编辑 ]
2008-9-15 11:33
yxyhack
Rank: 1
等级:新手上路
帖子:10
积分:204
注册:2008-9-15

fopen()
fread()
fseek()
strstr()

抱歉,我没有时间给你写这个。但可以告诉你,处理那些问题以上几个函数是最关键的,你自己查查它们的用处吧,然后自己看看怎么写。
2008-9-15 11:52
子洋虾米
Rank: 2
来自:哈尔滨市第九中学
等级:注册会员
帖子:79
积分:944
注册:2008-9-15

吖~谢谢……不过我没想明白啊……
SEKK函数的offset,可以是sizeof(int)么?

[ 本帖最后由 子洋虾米 于 2008-9-15 14:04 编辑 ]
2008-9-15 12:09
StarWing83
Rank: 12Rank: 12Rank: 12
来自:湖北工业大学
等级:版主
威望:9
帖子:2483
积分:26219
注册:2007-11-16

4#的函数有用么??
跳过一行:

int ch;
while(ch=fgetc(fp),ch!='\n' && ch!=EOF);

AAA BBB 123
将每个元素填到不同变量里面:
fscanf(fp,"%s %s %d",str1,str2,&n);

将变量写入文件:
fprintf(fp,"%s %s %d",str1,str2,n);

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-9-15 13:37
子洋虾米
Rank: 2
来自:哈尔滨市第九中学
等级:注册会员
帖子:79
积分:944
注册:2008-9-15

6#,首先谢谢你~
但是有个问题
需要跳过的那一行是有一个不定的数字的啊,这怎么判断呢?
还有,怎样让fp读完一行然后自动去读下一行呢?

我是高中生啊,有些问题不大懂,还望赐教!
2008-9-15 14:07
StarWing83
Rank: 12Rank: 12Rank: 12
来自:湖北工业大学
等级:版主
威望:9
帖子:2483
积分:26219
注册:2007-11-16

1: 跳过一行,本质上是找寻回车"\n"的位置。上面的代码很直接地完成了这个任务。然而效率方面不是很理想,如果希望效率最高的话,可以一次读取4K,然后strchr去找回车,当然要根据实际情况去选择了。

2:读完了一行,自然会继续读下一行了。

换行其实就是一个(或两个)普通的字符,你知道那个字符就是“换行”的意思就可以了,本质上和'abc'这种字符没有什么区别,你只需要当查找来做就好。

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-9-15 14:24
forever74
Rank: 4
等级:高级会员
威望:3
帖子:515
积分:5984
注册:2007-12-27

本质上说,这种文本文件是不能直接定位的。
所以所谓跳过一行,实际上就是用个没啥用的变量把它读进去,然后扔到一边不用罢了。
2008-9-15 19:00
forever74
Rank: 4
等级:高级会员
威望:3
帖子:515
积分:5984
注册:2007-12-27

话说两位头像撞车,有自言自语的意思
2008-9-15 19:01
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 1.953077 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved