Foxtable(狐表)用户栏目专家坐堂 → 读取PDF文档数据


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

主题:读取PDF文档数据

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/2 11:21:00 [显示全部帖子]


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/6/10 22:24: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(" ")
        If cs.Length > 4 Then
            Dim dr As DataRow = DataTables("表A").Addnew()
            Dim j As Integer = 0
            For Each s As String In cs
                If s > "" Then
                    j += 1
                    If j = 1 Then
                        dr("第一列") = s
                    End If
                    If j = 2 Then
                        dr("第二列") = s.substring(0, s.Length-1)
                    End If
                End If
            Next
        End If
    Next
End If
Tables("表A").ResumeRedraw

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/6/12 10:36:00 [显示全部帖子]

Dim LineNames As List(Of String)
LineNames = DataTables("表A").GetValues("第一列")
For Each LineName As String In LineNames
    Dim fdr1 As DataRow = DataTables("表A").find("[第一列]='" & LineName & "'", "第二列")
    Dim fdr2 As DataRow = DataTables("表A").find("[第一列]='" & LineName & "'", "第二列 desc")
    Dim ndr As DataRow = DataTables("表B").addnew
    ndr("第一列") = linename
    ndr("第二列") = fdr1("第二列")
    ndr("第三列") = fdr1("第三列")
    ndr("第四列") = fdr1("第四列")
    ndr("第五列") = fdr2("第二列")
    ndr("第六列") = fdr2("第四列")
    ndr("第七列") = fdr2("第四列")
Next

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/6/13 10:03:00 [显示全部帖子]

Dim dlg As new OpenFileDialog
dlg.Filter = "文本文件|*.txt"
Tables("表A").StopRedraw
If dlg.ShowDialog = DialogResult.OK Then
    Using sr As IO.StreamReader = New IO.StreamReader(dlg.FileName) '直接从文件路径生成'
    Dim line As String = sr.ReadLine() '读取一行
    Do While line IsNot Nothing '如果不为空.为空说明读取完毕,结束循环       
        Dim cs() As String = line.Split(" ")
        If cs.Length > 4 Then
            Dim dr As DataRow = DataTables("表A").Addnew()
            Dim j As Integer = 0
            For Each s As String In cs
                If s > "" Then
                    j += 1
                    If j = 1 Then
                        dr("第一列") = s
                    End If
                    If j = 2 Then
                        dr("第二列") = s.substring(0, s.Length-1)
                    End If
                End If
            Next
        End If
        line = sr.ReadLine() '读取下一行
    Loop
   
End Using

End If
Tables("表A").ResumeRedraw


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/6/14 12:18:00 [显示全部帖子]

1、foxtable里面的表格处理100万行的数据,是相当吃力的。即便导入了,你要保存,也是很耗时的。

 

2、你用的是内部表还是外部表?大数据量尽量用外部表。

 

3、你可以把文件拆分成50万(甚至更小)来测试,分批次合并保存。

 

4、数据导入以后,也要控制加载,不可能每次打开项目都加载全部数据吧?


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/29 16:15:00 [显示全部帖子]

以下是引用cglsg5076在2018/11/29 14:44:00的发言:
请问老师,我开发的程序如何自动适应不同分辨率的显示器,发现在不同的电脑里由于显示分辨率的不同导致一些控件显示不好,数据输入不方便甚至无法输入。请问如何解决。谢谢

 

方法一:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=67768&skin=0

 

方法二:一般通过【分辨率小的屏幕】设计界面,然后固定界面大小

 

方法三:设计好锚定、停靠等,然后把自动滚动设置成true


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/9 10:25:00 [显示全部帖子]

Dim dr As DataRow
dr = DataTables("Sh").Find("[Bl]= '" & name & "' and Sho is null")
If dr IsNot Nothing Then
    msgbox("空")
End If

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/9 17:47:00 [显示全部帖子]

以下是引用cglsg5076在2019/1/9 17:44:00的发言:
老师好,窗口里的table没有click事件,可我需要当click窗口里的table时,执行form(“main”).text="current table is time". 请问如何写代码?谢谢

 

在绑定的表的【表属性】-> click事件写,如

 

If forms("main").opened Then

    form("main").text="current table is time"

End If

[此贴子已经被作者于2019/1/9 17:47:34编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/11 10:59:00 [显示全部帖子]

不可以,除非这样一样大小

 

Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Chart= Forms("窗口1").Controls("Chart1") ' 引用窗口中的图表
Chart.ChartType = ChartTypeEnum.Bubble
Chart.SeriesList.Clear() '清除图表原来的图系
For i As Integer = 0 To 9 '指定每个数据点的位置
    Series = Chart.SeriesList.Add() '增加一个图系
    Series.Length = 10 '图系包括10个数据点
    Series.MarkShape= MarkShapeEnum.Dot '指定数据标记为圆点.
    Series.MarkColor = Color.FromARGB(255, rand.Next(255), rand.Next(255), rand.Next(255))
    Series.LinePattern = LinePatternEnum.None '不显示数据点之间的联线
    Series.X(i) = i '指定水平坐标
    Series.Y(i) = i + Rand.Next(5) '垂直坐标用随机数生成
    Series.Y1(i) = Rand.Next(5) '泡的大小用随机数生成
Next


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/11 11:14:00 [显示全部帖子]

mark 散点图 测试了一下,可以

 

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


 回到顶部
总数 15 1 2 下一页