Foxtable(狐表)用户栏目专家坐堂 → [求助]批量文本文件内容读取到表中


  共有3143人关注过本帖树形打印复制链接

主题:[求助]批量文本文件内容读取到表中

美女呀,离线,留言给我吧!
Joe
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:33 积分:294 威望:0 精华:0 注册:2013/8/12 21:07:00
[求助]批量文本文件内容读取到表中  发帖心情 Post By:2014/11/10 14:57:00 [只看该作者]

我是一名新手,想从指定的目录下(比如: D:\Txt )批量读取所有txt文件中第二行的数据到表中。文本文件的第二行包含3列数据,指定目录Txt下可能还包含子目录。

查了帮助文件,只找到读取指定的文本文件名的例子(3.4.3.6 编码合并文本文件),没有找到搜索所有txt文件,然后一一读取的例子,请大侠们指点一下,万分感谢!


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/11/10 15:03:00 [只看该作者]

 不同格式,读取的方式是不一样的。

 

 如果你参考例子能读取某一个txt文件,接着你只需要循环所有的文件即可

 

http://www.foxtable.com/help/topics/0341.htm

 


 回到顶部
美女呀,离线,留言给我吧!
Joe
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:33 积分:294 威望:0 精华:0 注册:2013/8/12 21:07:00
  发帖心情 Post By:2014/11/10 20:31:00 [只看该作者]

真的非常非常感谢有点甜的指教,通过下面的代码,可以读取指定目录下的文件和数据。

叩谢!!!

 

For Each MyFile As String In FileSys.GetFiles("E:\FoxTable Project\CMM测量时间收集程序\TXT File")
     Tables("InforData").StopRedraw
     Dim   strs As  String =   FileSys.ReadAllText(Myfile)
        strs =   strs.Replace(vblf,"")
     Dim   rs() As  String =   strs.Split(vbcr)
     For i As Integer = 0 To rs.Length - 1
         Dim   cs() As  String =   rs(i).Split(vbtab)
          If i=1 Then
                     Dim   dr As  DataRow = DataTables("InforData").Addnew()
                     dr("OrderCMM") =  cs(35)     '----order
                     dr("Partnb") =  cs(0)        '----planid
                     dr("Operid") =  cs(3)        '----operid
                     dr("Date") =  cs(4)          '----date
                     dr("Time") =  cs(5)          '----time
                     Dim CMMInspector As String
                     CMMInspector=cs(1)
                     dr("Inspector") = right(left(CMMInspector,9),3)

                     dr("CostTime") =  cs(56)
                     dr("FileName") = MyFile

                     Dim ifo As new FileInfo(MyFile)
                     dr("FileTime") =  ifo.LastWriteTime

           End If
      Next
     Tables("InforData").ResumeRedraw
Next

 

 


 回到顶部