| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1205 人关注过本帖
标题:如何从低级文本中读取数据
只看楼主 加入收藏
曾震
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2011-9-8
结帖率:72.73%
收藏
已结贴  问题点数:20 回复次数:4 
如何从低级文本中读取数据
低级文本中数据的存取是以空格为分隔的一些字符,fseek()函数可以移动指针,fgets()函数可以读取一定的字符串,我考虑过用上述两个函数和循环语句加上条件判断语句,如何编写合理高效的语句能读取这些以空格分隔开的单个字符串呢?请指导!
搜索更多相关主题的帖子: 数据 移动 字符串 如何 
2011-09-21 19:00
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
首先用fgets()从文件中读入一整行(此函数读入直到遇到回车换行结束,并且返回结果中不会有回车换行符,是纯粹字符串)。
得到这个字符串(比如是cString)之后,用GETWORDCOUNT(cString, ' ')函数取得以空格分隔的单词数。
然后用GETWORDNUM(cString, nIndex, ' ')逐个提取单词字符串,转换为需要的数据类型。

授人以渔,不授人以鱼。
2011-09-21 19:26
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
因为我不知道你读入数据后是如何运用的,所以这只是使用现成函数的方法,不算最高效(取单词数的时候已经把字符串扫描了一遍,第二次取单词时有重叠动作,不过影响不是很大),但足够一般应用了。

授人以渔,不授人以鱼。
2011-09-21 19:47
曾震
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2011-9-8
收藏
得分:0 
谢谢tonydeng指导!学习了!
2011-09-21 20:24
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:20 
补充一下:VFP可以用FILETOSTR()函数把整个文件读到一个字符串中,但这个字符串包含回车换行符,如果对这样的字符串应用GETWORDCOUNT()函数,则回车换行组合(即CHR(13)+CHR(10))会被计入单词数中,要注意排除。

授人以渔,不授人以鱼。
2011-09-21 22:32
快速回复:如何从低级文本中读取数据
数据加载中...
 
   



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

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