| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2169 人关注过本帖
标题:如何将该文本格式导入数据库中?
只看楼主 加入收藏
bsthq
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2010-8-25
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:6 
如何将该文本格式导入数据库中?
我这有一批文本文件,记录了相关的数据信息,文本中记录了上(双)下(单)行车次、到达时间和通过时间、车型和车号等信息,每过一个车次就形成一个记录文件,现在需要将该记录文件导入数据库中,只需要通过时间、车次、车型和车号信息,对上下行进出的车辆进行车辆信息比对,车号相同的就复制到统计库中,同时记录该条车号的进入的时间和返回时间,以计算在线内的停留时间。

由于文本记录的格式有点特别,不知道如何截取里面的相关信息实现循环入库操作,请各位老师帮忙实现。谢谢!
说明.rar (4.94 KB)
搜索更多相关主题的帖子: 数据库 文本 格式 
2010-08-30 16:11
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
收藏
得分:5 
如果记录不规则,只能读文件,进行文本解析,再作处理!

★★★★★为人民服务★★★★★
2010-08-31 05:52
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11808
专家分:43421
注 册:2006-5-13
收藏
得分:5 
楼主的文件中基本上是以空格分隔的,可以按顺序读入一行数据,然后分离出每个字段的内容。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2010-08-31 07:02
bsthq
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2010-8-25
收藏
得分:0 
我也想如此,就是不知道如何实现
2010-08-31 15:51
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11808
专家分:43421
注 册:2006-5-13
收藏
得分:0 
可以用fopen()打开文本文件,然后用fgets()逐行读入文本,再以空格为标志,分解出各个字段的内容。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2010-09-01 06:50
Assassion
Rank: 1
等 级:新手上路
帖 子:6
专家分:8
注 册:2010-9-2
收藏
得分:5 
qiaoqiao
2010-09-02 14:27
茵梦湖
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:31
帖 子:545
专家分:2180
注 册:2009-4-25
收藏
得分:5 

文本格式转为数库数据 代码示例, 供参考~
 
程序代码:
******@***@******
******@***@******
proc 更新对阵
sele *,spac(200) ztxt,spac(30) 别名1,spac(30) 别名2  from k_based where .f. into tabl &temp\lsnew
appe fiel ztxt from &temp\ls_更新 deli
repl all  ztxt with uppe(allt(ztxt))
repl ztxt with strt(ztxt,"VS","  ")  for "VS"$ztxt
repl ztxt with ltrim( subs(ztxt,at(" ",ztxt)) )  for at(" ",ztxt)<4  && 序号
dele for "**源格式"$ztxt .or.( len(allt(ztxt))<10 .and..not.&z年co )
pack
repl ztxt with dtoc(date()-7) +" 11:11 " +ztxt for occu(" ",allt(ztxt))<=3 .and.val(ztxt)<2001001  && 序号 主队VS客队
repl ztxt with left(dtoc(date()),5) +ztxt for !( left(dtoc(date()),4)$ztxt .or.left(dtoc(date()-7),4)$ztxt )  && 9.26 21:30 主队 [VS] 客队
go top
brow wind winnt fiel 序号=recn():6,ztxt:120 titl " 更新对阵,  源记录总览~"

***
ls期号="???????"
ls截止=dtoc(date())
scan for !empt(ztxt)
   if at(" ",ztxt)=8 .and.&z年co
      ls期号 =left(ztxt,7)
      ls截止 =dtoc(ctod( allt(subs(ztxt,8)) ))
      ls场次 =0
      loop
   endif
   if "???????"$ls期号
      loop
   endif
   ls场次=ls场次+1

   repl 期号 with ls期号, 截止 with ls截止, 场次 with "[" +padl(ls场次,2,"0") +"]"
   nn=at(" ",ztxt)
   lsdate=dtoc(ctod(left(ztxt,nn-1)))
   repl ztxt with ltrim(subs(ztxt,nn))  
   nn=at(" ",ztxt)
   lstime=lsdate +" "+left(ztxt,nn-1)
   repl zdate with lsdate, ztime with righ(ttoc(ctot(lstime)),5), ztxt with ltrim(subs(ztxt,nn))
   nn=at(" ",ztxt)
   repl 别名1 with left(ztxt,nn), ztxt with ltrim(subs(ztxt,nn))
   nn=at(" ",ztxt)
   repl 别名2 with left(ztxt,nn)
endscan
...
2010-09-02 14:54
快速回复:如何将该文本格式导入数据库中?
数据加载中...
 
   



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

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