以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何将指定目录下的文件地址写入表中  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=87093)

--  作者:天若千颖
--  发布时间:2016/7/3 0:10:00
--  如何将指定目录下的文件地址写入表中

各位老师,

我想通过指定一个目录,然后自动把这个目录下的文件地址写入表中,类似于http://foxtable.com/bbs/dispbbs.asp?BoardID=5&ID=86083&replyID=&skin=1的功能。

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20160703000049.jpg
图片点击可在新窗口打开查看

 

这样对于大量的文件导入就不用一个一个手动添加了。

 

Dim dlg As New FolderBrowserDialog  \'选择目录

Dim Folder2 As String
dlg.Description ="选择导入目录"

If dlg.ShowDialog = DialogResult.Ok  Then
    Folder2 = dlg.SelectedPath

????????
 End If

 

如何把这个目录下的文件的路劲导入 表“文件存放表”中的“文件路径”这一列中呢,存放后可以直接在这里打开原文件?


 


--  作者:大红袍
--  发布时间:2016/7/4 0:32:00
--  

Dim dlg As New FolderBrowserDialog  \'选择目录
dlg.Description ="选择导入目录"

If dlg.ShowDialog = DialogResult.Ok  Then
    For Each f As String In FileSys.GetFiles(dlg.SelectedPath)
        Dim ndr As DataRow = DataTables("表A").addnew
        ndr("第三列") = f
    Next
End If


--  作者:天若千颖
--  发布时间:2016/7/4 12:50:00
--  
谢谢红袍老师。

2楼的代码得到的是文件的绝对路径,表格中填写的也是绝对路径,怎么像1楼图片中的表格那样,填写相对路径,只是一个文件名和后缀,但是点击可以打开文件呢。


--  作者:大红袍
--  发布时间:2016/7/4 14:24:00
--  

1、这一列的存放路径如果都是同一个文件夹的话,可以指定存放路径

 

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

 

2、如果是存放不同文件夹文件的话,你肯定要用绝对路径存放信息。你可以去编写drawcell事件,只显示名称不就好了?

 

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

 

 


--  作者:天若千颖
--  发布时间:2016/7/4 14:47:00
--  
恩,放不同的文件。如果这里是绝对路径,同时这一列又有相对路径的文件,如何通过表的Click事件直接打开呢?
这是相对路径的打开方式:
If e.Col.Name = "文件名及链接" Then
    If e.Row.IsNull("文件名及链接") = False Then
        Dim path As String = e.Col.DataCol.DefaultFolder
        If path = Nothing Then
            path = ProjectPath & "attachments/"
        End If
        path = path & e.Row("文件名及链接")
        Dim proc As new Process
        proc.File = path
        proc.Start
    End If
End If

--  作者:大红袍
--  发布时间:2016/7/4 14:56:00
--  

 

[此贴子已经被作者于2016/7/4 14:56:30编辑过]

--  作者:大红袍
--  发布时间:2016/7/4 14:57:00
--  
If e.Col.Name = "文件名及链接" Then
    If e.Row.IsNull("文件名及链接") = False Then
        Dim path As String = e.Row("文件名及链接")
        If FileSys.FileExists(path) = False Then
            path = e.Col.DataCol.DefaultFolder
            If path = Nothing Then
                path = ProjectPath & "attachments/"
            End If
            path = path & e.Row("文件名及链接")
        End If
        Dim proc As new Process
        proc.File = path
        proc.Start
    End If
End If