Foxtable(狐表)用户栏目专家坐堂 → 文本文件合并的问题


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

主题:文本文件合并的问题

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


加好友 发短信
等级:婴狐 帖子:31 积分:315 威望:0 精华:0 注册:2013/6/5 15:17:00
文本文件合并的问题  发帖心情 Post By:2013/6/6 21:37:00 [只看该作者]

我尝试使用帮助的代码,放到全局代码的位置: 如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

Dim dlg As new OpenFileDialog
dlg
.Filter = "文本文件|*.txt"
Tables(
"A").StopRedraw
If
dlg.ShowDialog = DialogResult.OK Then
    Dim
strs As String = FileSys.ReadAllText(dlg.FileName)
   
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
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
End If
Tables(
"表A").ResumeRedraw

 

但是显示错误,主要是显示 dlg.Filter = "文本文件|*.txt" 出错。我想用这段代码将我每日的文本文件添加到foxtable 的 data.tale里面,或者有什么方法吗?

 

这个是什么原因? 请大家提示下。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:20130228.txt

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:20130302.txt

[此贴子已经被作者于2013-6-6 22:03:20编辑过]

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


加好友 发短信
等级:婴狐 帖子:31 积分:315 威望:0 精华:0 注册:2013/6/5 15:17:00
  发帖心情 Post By:2013/6/6 21:44:00 [只看该作者]

我每日都会有一个文本文件要导入,文本文件的格式是一样,只是里面的信息不同。我录入的目的是方便以后调用和做筛选的。

 

我要做一个按钮,只要click就可以选择需要导入的文本文件到foxtable里面,每日都会增加数据的。怎样实现才比较好?

 

请高手们指点


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


加好友 发短信
等级:小狐 帖子:321 积分:2468 威望:0 精华:2 注册:2013/1/16 19:33:00
  发帖心情 Post By:2013/6/6 21:51:00 [只看该作者]

不能上例子么

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


加好友 发短信
等级:婴狐 帖子:31 积分:315 威望:0 精华:0 注册:2013/6/5 15:17:00
  发帖心情 Post By:2013/6/6 22:05:00 [只看该作者]

如附件,这些文本文件我每日需要更新到foxtable里的,方便以后调用。

现在就是不知道如何去写代码将这些数据读进去。


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


加好友 发短信
等级:小狐 帖子:321 积分:2468 威望:0 精华:2 注册:2013/1/16 19:33:00
  发帖心情 Post By:2013/6/6 22:18:00 [只看该作者]

测试无错误提示。不知要导入的是文本文件的哪几个字段

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


加好友 发短信
等级:婴狐 帖子:31 积分:315 威望:0 精华:0 注册:2013/6/5 15:17:00
  发帖心情 Post By:2013/6/6 23:07:00 [只看该作者]

Dim dlg As new OpenFileDialog
dlg
.Filter = "文本文件|*.txt"
Tables(
"A").StopRedraw
If
dlg.ShowDialog = DialogResult.OK Then
    Dim
strs As String = FileSys.ReadAllText(dlg.FileName)
   
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
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
End If
Tables(
"表A").ResumeRedraw

 

这段代码应该写到哪里? 放到全局代码吗?还是放在命令窗口里面?


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/6/7 8:52:00 [只看该作者]

1、出错是因为列的长度不够,例如某个字符列的而长度是16,你要写入20个字符,就会提示长度不够

2、代码写在那里? 你只是临时导入,就在命令窗口执行就行,如果要经常导入,就在菜单或者窗口中加入一个按钮,代码写在这个按钮的Click事件中

3、继续按顺序看下去,就明白怎么回事了。


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


加好友 发短信
等级:婴狐 帖子:31 积分:315 威望:0 精华:0 注册:2013/6/5 15:17:00
  发帖心情 Post By:2013/6/7 9:44:00 [只看该作者]

非常感谢狐爸,已经明白了。

感谢其他高手的回答。


 回到顶部