以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  文件导入,用循环遍历却出问题,单个导入可以  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=17909)

--  作者:pb_1
--  发布时间:2012/3/28 14:47:00
--  文件导入,用循环遍历却出问题,单个导入可以

Dim ip As New Importer
ip.SourcePath =e.Form.Controls("DropBox1").value

For Each File As String In FileSys.GetFiles(ip.SourcePath)
    ip.SourceTableName = file  \'指定要导入的文件"订单.DBF"
    ip.NewTableName = file \'导入后的表名
    ip.Format = "dbase" \'指定导入格式
    If DataTables.Contains(file) \'如果存在统计表1
        DataTables.Delete(file)
    End If
    ip.Import()
Next

 

 出现以下错误提示,

 

 


图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看

 

 

如果单个的插入没问题

Dim ip As New Importer
ip.SourcePath =e.Form.Controls("DropBox1").value

    ip.SourceTableName = “订单”  \'指定要导入的文件"订单.DBF"
    ip.NewTableName = “订单” \'导入后的表名
    ip.Format = "dbase" \'指定导入格式
    If DataTables.Contains(“订单”) \'如果存在统计表1
        DataTables.Delete(“订单”)
    End If
    ip.Import()


--  作者:狐狸爸爸
--  发布时间:2012/3/28 14:49:00
--  
For Each File As String In FileSys.GetFiles(ip.SourcePath)
    Dim ip As New Importer
    ip.SourcePath =e.Form.Controls("DropBox1").value
    ip.SourceTableName = file  \'指定要导入的文件"订单.DBF"
    ip.NewTableName = file \'导入后的表名
    ip.Format = "dbase" \'指定导入格式
    If DataTables.Contains(file) \'如果存在统计表1
        DataTables.Delete(file)
    End If
    ip.Import()
Next

--  作者:pb_1
--  发布时间:2012/3/28 14:56:00
--  

狐狸爸爸!

Dim ip As New Importer这句如果放在第二行,那么这个循环For Each File As String In FileSys.GetFiles(ip.SourcePath)这里则会报错,我昨天试了


--  作者:狐狸爸爸
--  发布时间:2012/3/28 14:58:00
--  
For Each File As String In FileSys.GetFiles(e.Form.Controls("DropBox1").value)
    Dim ip As New Importer
    ip.SourcePath =e.Form.Controls("DropBox1").value
    ip.SourceTableName = file  \'指定要导入的文件"订单.DBF"
    ip.NewTableName = file \'导入后的表名
    ip.Format = "dbase" \'指定导入格式
    If DataTables.Contains(file) \'如果存在统计表1
        DataTables.Delete(file)
    End If
    ip.Import()
Next

--  作者:pb_1
--  发布时间:2012/3/28 15:05:00
--  
狐狸爸爸,还是一样的错误提示,我指定的目录下有25个DBF文件,出现了25次错误提示。也就是说文件都找到了,应该是导入的时候存在问题
--  作者:狐狸爸爸
--  发布时间:2012/3/28 15:14:00
--  
提示什么?
--  作者:pb_1
--  发布时间:2012/3/28 15:15:00
--  

跟一楼的那张错误提示抓图一样


--  作者:狐狸爸爸
--  发布时间:2012/3/28 15:19:00
--  
发几个你的dbf文件上来看看。
--  作者:pb_1
--  发布时间:2012/3/28 15:23:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:总分.rar

麻烦了
--  作者:狐狸爸爸
--  发布时间:2012/3/28 16:43:00
--  

For Each File As String In FileSys.GetFiles("c:\\总分\\")
    Dim ip As New Importer
    Dim nm  As String = FileSys.GetName(file)
    nm = nm.SubString(0, nm.Length - 4)
    ip.SourcePath = "c:\\总分\\" \'指定目录
    ip.SourceTableName = nm \'指定要导入的文件"订单.DBF"
    ip.NewTableName = nm \'导入后的表名
    ip.Format = "dbase" \'指定导入格式
    ip.Import()
Next

 

提示,上面的代码能导入你大部分的文件,有的文件会导致出错,不能提示,不是代码的问题,而是这些文件有问题。

[此贴子已经被作者于2012-3-28 16:48:21编辑过]