| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 743 人关注过本帖
标题:求助:如何将TXT中的几个数据提取
只看楼主 加入收藏
悠闲小鱼
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2007-4-18
结帖率:60%
收藏
已结贴  问题点数:20 回复次数:8 
求助:如何将TXT中的几个数据提取
请各位大侠帮助下。
数据格式如下:
20131005.HHH
power on  : 20131005 10:23:53
date: 20131005 start time: 10:45:16 file: 02C0_1号站签订
date: 20131005 start time: 10:45:19 file: 02C0_1号站签订
date: 20131005 start time: 10:50:04 file: 02C1_2号站签订
date: 20131005 start time: 10:50:06 file: 02C1_2号站签订
date: 20131005 start time: 11:08:25 file: 04C1_3号站签订
date: 20131005 start time: 11:08:28 file: 04C1_3号站签订
date: 20131005 start time: 11:52:59 file: 02B0_4号站签订
date: 20131005 start time: 11:53:02 file: 02B0_4号站签订
想请取20131005日期 和 所有时间段时间到表中相应字段:日期和时间。在下不胜感激。

[ 本帖最后由 悠闲小鱼 于 2013-10-16 20:11 编辑 ]
搜索更多相关主题的帖子: start 如何 file 
2013-10-15 13:06
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
用數據表過渡,如果不想創建數據表,則先學會讀寫低級文件的辦法。

授人以渔,不授人以鱼。
2013-10-15 14:01
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:0 
用低级文件函数fopn()打开txt文件,用fread()函数读取内容,然后再处理相关的内容。详细介绍请看帮助文件。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2013-10-15 19:15
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
分析:
1.文本文件中,每行字符串常规应该是以回车符[CHR(13)]与换行符[CHR(10)]做为结束标志的,组合起来就是:CHR(13)+CHR(10)。根据这个特点,提取每行字符串中需要的内容就容易了。
2.首先要将文本文件中的内容转换为字符串,就要用到 FILETOSTR(),然后根据上面介绍的文本文件中每行字符串结束标志,需要用 ALINES()[注:VFP6 和 VFP9 版本用法稍有不同,帮助文件中有详细说明]将转换后的字符串中的每一行内容复制到数组的对应行中。
3.用 FOR ENDFOR 命令将保存在数组中的内容逐行显示,提取所需内容的方法多种多样,主要是看运行速度的快慢判断程序编写的质量。
4.如果要提取每行中的内容,可以用 strextract(),该函数VFP6中没有,详细用法参见VFP帮助文件中。

坚守VFP最后的阵地
2013-10-15 20:25
bhyysjh
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2011-1-16
收藏
得分:0 
回复 楼主 悠闲小鱼
****假设数据文件名为:FILENAME.TXT****创建临时表CREATE TABLE temp (cMSG c (100))****导入记录APPEND FROM filename.txt SDF
LOCAL c_date  , c_timec_date="20131005"   &&&& 指定查询日期c_time="10:45:16"   &&& 指定查询时间LOCATE FOR  AT(c_date,cMSG)>0 AND AT(c_time,cMSG)>0if found()?"日期:"+c_date+" 时间:"+c_time +" 备注:" +RTRIM(SUBSTR(cMsg,43))else messagebox("没有找到符合条件的记录。",48,"")endif return
2013-10-15 20:31
悠闲小鱼
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2007-4-18
收藏
得分:0 
虽然还没全弄明白,先谢谢各位大侠了,思路是有了,具体程序还没写好。如有相同事例或资料,发上来,参考一下。

[ 本帖最后由 悠闲小鱼 于 2013-10-16 20:10 编辑 ]
2013-10-16 19:56
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:20 
图片附件: 游客没有浏览图片的权限,请 登录注册



图片附件: 游客没有浏览图片的权限,请 登录注册


[ 本帖最后由 tlliqi 于 2013-10-16 20:39 编辑 ]
2013-10-16 20:36
sdoger
Rank: 2
等 级:论坛游民
威 望:1
帖 子:27
专家分:12
注 册:2011-2-15
收藏
得分:0 
以下是引用bhyysjh在2013-10-15 20:31:52的发言:

****假设数据文件名为:FILENAME.TXT****创建临时表CREATE TABLE temp (cMSG c (100))****导入记录APPEND FROM filename.txt SDF
LOCAL c_date  , c_timec_date="20131005"   &&&& 指定查询日期c_time="10:45:16"   &&& 指定查询时间LOCATE FOR  AT(c_date,cMSG)>0 AND AT(c_time,cMSG)>0if found()?"日期:"+c_date+" 时间:"+c_time +" 备注:" +RTRIM(SUBSTR(cMsg,43))else messagebox("没有找到符合条件的记录。",48,"")endif return
太对了。。。。。。。。
2013-11-05 17:03
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
编码格式不明,无从下手

坚守VFP最后的阵地
2021-03-11 22:17
快速回复:求助:如何将TXT中的几个数据提取
数据加载中...
 
   



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

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