首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

那位大侠有空帮测试一个函数!解决方案

2012-01-21 
那位大侠有空帮测试一个函数!Public Function M_Get文件列表(文件夹) As ObjectSet M_Get文件列表 Creat

那位大侠有空帮测试一个函数!
Public Function M_Get文件列表(文件夹) As Object
Set M_Get文件列表 = CreateObject("Scripting.Dictionary")
Set 列表 = M_Get文件列表
Set fs = CreateObject("Scripting.FileSystemObject")
If Not fs.FolderExists(文件夹) Then Exit Function
Call M_Find文件(文件夹, 列表, fs)
End Function

Public Function M_Find文件(文件夹, 列表, fs)
Set f = fs.GetFolder(文件夹)
Set fc = f.SubFolders
For Each f1 In fc
  Set 列表(f1.Name) = CreateObject("Scripting.Dictionary") '
  SubFd = 文件夹 & "\" & f1.Name '
  Call M_Find文件(SubFd, 列表(f1.Name), fs)
  上层目录 = Replace(文件夹, "'", "''")
  文件名 = Replace(f1.Name, "'", "''")
  完整名 = Replace(SubFd, "'", "''")
  添加串 = "insert into 文件表 (上层目录,属性,文件名,完整名) values ('" & 上层目录 & "','目录'," & "'" & 文件名 & "','" & 完整名 & "')"
  CurrentProject.Connection.Execute 添加串
Next
Set f = fs.GetFolder(文件夹)
Set fc = f.Files
For Each f1 In fc
  列表(f1.Name) = 文件夹 & "\" & f1.Name
  上层目录 = Replace(文件夹, "'", "''")
  文件名 = Replace(f1.Name, "'", "''")
  完整名 = Replace(列表(f1.Name), "'", "''")
  添加串 = "insert into 文件表 (上层目录,属性,文件名,完整名) values ('" & 上层目录 & "','文件'," & "'" & 文件名 & "','" & 完整名 & "')"
  CurrentProject.Connection.Execute 添加串 '注意 有一些数据通不过!!!
Next
End Function

用access中vba:
1.建一个表:文件表(id:自增字段;上层目录;属性;文件名;完整名)共五个字段(除了id其余为文本字段)


调用方法:Set lb = M_Get文件列表("C:\Documents and Settings")
(如果文件很多,大概要执行几分钟)
在我的电脑上偶尔有一些数据通不过(含日文数据),如果改成:
上层目录 = Replace(StrConv(StrConv(文件夹, vbFromUnicode), vbUnicode), StrConv("'", vbFromUnicode), "''")
这种形式,含有“'”字符的文件通不过,怎么修改也不能让这两种文件同时通过,大侠帮分析下什么原因?



[解决办法]
这是什么语言?怎么会有这么多汉字?
[解决办法]

探讨
这是什么语言?怎么会有这么多汉字?

[解决办法]
看得看花,这中英文混杂够乱的
[解决办法]
我还以为是易语言……

热点排行