以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 关于删除文件夹中不符合条件的文件 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=131503) |
||||
-- 作者:裴保民 -- 发布时间:2019/2/27 22:30:00 -- 关于删除文件夹中不符合条件的文件 怎么删除指定文件夹下的多余的文件呢?文件的命名是以数据库某列字段命名的,比如某列的列名是"文本文件"字段有A、B、C、D等等,指定的文件夹下有A、B、D、E、F、F1、S、S1、S2、S3、W、Q、R等等文件我怎么循环删除不符合条件的文件呢?即删除E、F、F1、S、S1、S2、S3、W、Q、R文件 |
||||
-- 作者:有点甜 -- 发布时间:2019/2/27 23:06:00 -- 参考
|
||||
-- 作者:裴保民 -- 发布时间:2019/2/28 10:01:00 -- 执行代码后把所有的图片全删了,怎么只删除数据库不存在图片呢?只要数据库中某子段名称存在就不删除了呢? |
||||
-- 作者:有点甜 -- 发布时间:2019/2/28 10:04:00 -- Dim dir As new io.DirectoryInfo("d:\\")
|
||||
-- 作者:裴保民 -- 发布时间:2019/2/28 10:20:00 -- 怎么还是删除了所有的照片呢? Dim dir As new io.DirectoryInfo(ProjectPath & "照片\\客户身份证/") Dim t As Table = Tables("客户档案") For Each File As object In dir.GetFiles If t.DataTable.Find("照片原始名 like \'%" & file.name & "%\'") Is Nothing Then msgbox(file.name) \'file.delete End If Next [此贴子已经被作者于2019/2/28 10:20:54编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2019/2/28 10:21:00 -- 以下是引用裴保民在2019/2/28 10:20:00的发言:
怎么还是删除了所有的照片呢?
1、贴出代码;
2、截图或者具体实例说明。 |
||||
-- 作者:裴保民 -- 发布时间:2019/2/28 10:29:00 -- 打开程序打开窗体单击“删除多余图片”按钮,执行后是删除所有的照片了,我想要的结果是只删除文件夹照片\\客户身份证/下所有文件名称中不包括"照片原始名 ”字段的所有照片 Dim dir As new io.DirectoryInfo(ProjectPath & "照片\\客户身份证/") Dim t As Table = Tables("客户档案") For Each File As object In dir.GetFiles If t.DataTable.Find("照片原始名 like \'%" & file.name & "%\'") Is Nothing Then msgbox(file.name) \'file.delete End If Next
[此贴子已经被作者于2019/2/28 10:29:35编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2019/2/28 10:37:00 -- Dim dir As new io.DirectoryInfo(ProjectPath & "照片\\客户身份证/") Dim t As Table = Tables("客户档案") For Each File As object In dir.GetFiles Dim contains = False For Each r As Row In t.Rows If r("照片原始名") > "" AndAlso file.name.contains(r("照片原始名")) = True Then contains = True Exit For End If Next If contains = False Then msgbox(file.name) \' file.delete End If Next |
||||
-- 作者:裴保民 -- 发布时间:2019/2/28 11:06:00 -- Dim dir As new io.DirectoryInfo(ProjectPath & "照片\\客户身份证/") Dim t As Table = Tables("客户档案") For Each File As object In dir.GetFiles Dim contains = False For Each r As Row In t.Rows If r("照片原始名") > "" AndAlso file.name.contains(r("照片原始名")) = True Then contains = True Exit For End If Next If contains = False Then msgbox(file.name) FileSys.CopyFile(file," C:\\Users\\Administrator\\Desktop\\照片\\复制照片/"& file.name, True) file.delete End If Next 我想在删除之前先复制到C:\\Users\\Administrator\\Desktop\\照片\\复制照片/文件夹下,怎么复制不了呢? [此贴子已经被作者于2019/2/28 11:08:01编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2019/2/28 11:18:00 -- Dim dir As new io.DirectoryInfo(ProjectPath & "照片\\客户身份证/") Dim t As Table = Tables("客户档案") For Each File As object In dir.GetFiles Dim contains = False For Each r As Row In t.Rows If r("照片原始名") > "" AndAlso file.name.contains(r("照片原始名")) = True Then contains = True Exit For End If Next If contains = False Then msgbox(file.name) If FileSys.DirectoryExists("C:\\Users\\Administrator\\Desktop\\照片\\复制照片") = False Then FileSys.CreateDirectory("C:\\Users\\Administrator\\Desktop\\照片\\复制照片") End If file.copyto("C:\\Users\\Administrator\\Desktop\\照片\\复制照片\\" & file.name, True) \'file.delete End If Next |