| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5485 人关注过本帖
标题:【提问】怎样在读取文件时直接跳过行
只看楼主 加入收藏
子洋虾米
Rank: 1
来 自:哈尔滨市第九中学
等 级:新手上路
帖 子:79
专家分:0
注 册:2008-9-15
收藏
 问题点数:0 回复次数:13 
【提问】怎样在读取文件时直接跳过行
比如以下文件

4
wangziyang 98 87 Y Y 1

怎样在读取时直接跳过第一行而读wangziyang 98 87 Y Y 1?
在PASCAL语言中可以使用readln语句,在C语言中怎样实现呢?谢谢。
搜索更多相关主题的帖子: 文件 提问 
2008-09-15 11:28
yxyhack
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-9-15
收藏
得分:0 
文件指针直接跳过第一个换行符就OK了。
2008-09-15 11:32
子洋虾米
Rank: 1
来 自:哈尔滨市第九中学
等 级:新手上路
帖 子:79
专家分:0
注 册:2008-9-15
收藏
得分:0 
怎样实现呢
我有点迷惑了,能给出具体语句么?
还有一个问题,当我把那一行完整读入后,希望把每一个空格前的字段分别存储,怎样实现?

[[it] 本帖最后由 子洋虾米 于 2008-9-15 11:40 编辑 [/it]]
2008-09-15 11:33
yxyhack
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-9-15
收藏
得分:0 
fopen()
fread()
fseek()
strstr()

抱歉,我没有时间给你写这个。但可以告诉你,处理那些问题以上几个函数是最关键的,你自己查查它们的用处吧,然后自己看看怎么写。
2008-09-15 11:52
子洋虾米
Rank: 1
来 自:哈尔滨市第九中学
等 级:新手上路
帖 子:79
专家分:0
注 册:2008-9-15
收藏
得分:0 
吖~谢谢……不过我没想明白啊……
SEKK函数的offset,可以是sizeof(int)么?

[[it] 本帖最后由 子洋虾米 于 2008-9-15 14:04 编辑 [/it]]
2008-09-15 12:09
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
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-09-15 13:37
子洋虾米
Rank: 1
来 自:哈尔滨市第九中学
等 级:新手上路
帖 子:79
专家分:0
注 册:2008-9-15
收藏
得分:0 
6#,首先谢谢你~
但是有个问题
需要跳过的那一行是有一个不定的数字的啊,这怎么判断呢?
还有,怎样让fp读完一行然后自动去读下一行呢?

我是高中生啊,有些问题不大懂,还望赐教!
2008-09-15 14:07
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
1: 跳过一行,本质上是找寻回车"\n"的位置。上面的代码很直接地完成了这个任务。然而效率方面不是很理想,如果希望效率最高的话,可以一次读取4K,然后strchr去找回车,当然要根据实际情况去选择了。

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

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

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-09-15 14:24
forever74
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:CC
等 级:版主
威 望:58
帖 子:1692
专家分:4282
注 册:2007-12-27
收藏
得分:0 
本质上说,这种文本文件是不能直接定位的。
所以所谓跳过一行,实际上就是用个没啥用的变量把它读进去,然后扔到一边不用罢了。
2008-09-15 19:00
forever74
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:CC
等 级:版主
威 望:58
帖 子:1692
专家分:4282
注 册:2007-12-27
收藏
得分:0 
话说两位头像撞车,有自言自语的意思
2008-09-15 19:01
快速回复:【提问】怎样在读取文件时直接跳过行
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.035742 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved