Foxtable(狐表)用户栏目专家坐堂 → [求助]从一份130M的文本中读取数据


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

主题:[求助]从一份130M的文本中读取数据

帅哥哟,离线,有人找我吗?
农村人
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:174 积分:2349 威望:0 精华:0 注册:2015/8/12 15:36:00
[求助]从一份130M的文本中读取数据  发帖心情 Post By:2019/8/31 10:51:00 [只看该作者]

需要从一份130M的文本中读取数据(有1780000行),并写入数据表中,执行以下代码变得时间好长好长,最后死机了,
请前辈帮忙修改一下代码,

Dim dlg As new OpenFileDialog
dlg.Filter = "文本文件|*.txt"
If dlg.ShowDialog = DialogResult.OK Then
Using sr As IO.StreamReader = New IO.StreamReader(dlg.FileName,System.Text.Encoding.Default)
    Dim line As String = sr.ReadLine() '读取一行
        Dim rs1() As String = line.Split(vbcr)
        For i As Integer = 0 To rs1.Length - 1
            Dim cs() As String = rs1(i).Split(vbtab)
            If cs.Length = 4 Then
                Dim dr As DataRow = DataTables("表A").Addnew()
                dr("第一列") = cs(0)
                dr("第二列") = cs(1)
                dr("第三列") = cs(2)
                dr("第四列") = cs(3)
            End If
        Next 
    Do While line IsNot Nothing '如果不为空.为空说明读取完毕,结束循环
        line = sr.ReadLine() '读取下一行        
        Dim rs() As String = line.Split(vbcr)
        For i As Integer = 0 To rs.Length - 1
            Dim cs() As String = rs(i).Split(vbtab)
            If cs.Length = 4 Then
                Dim dr As DataRow = DataTables("表A").Addnew()
                dr("第一列") = cs(0)
                dr("第二列") = cs(1)
                dr("第三列") = cs(2)
                dr("第四列") = cs(3)
            End If
        Next     
    Loop
End Using
End If

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/31 11:09:00 [只看该作者]

参考:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=91737&replyID=&skin=1

需要分批把数据直接写入外部数据库。内部表无法一次性接收这么多数据

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


加好友 发短信
等级:幼狐 帖子:174 积分:2349 威望:0 精华:0 注册:2015/8/12 15:36:00
  发帖心情 Post By:2019/8/31 15:15:00 [只看该作者]

不得要领。看不懂这个思路。图片点击可在新窗口打开查看

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/31 15:53:00 [只看该作者]

哪个地方看不懂?

 回到顶部