码迷,mamicode.com
首页 > 其他好文 > 详细

VB6文件操作自定义函数合集之一

时间:2017-10-15 23:19:15      阅读:299      评论:0      收藏:0      [点我收藏+]

标签:dir   blog   gdi   nbsp   long   复制文件   false   删除   ror   

--与文件及文件夹操作相关的函数--必须引用FSO的ACTIVE OBJECT
Dim strList As String --列表串,返回文件列表================--文件操作区
Public Function CopyFile(SourseStr As String, WhereStr As String, Optional WhereStr2 As String = "") As Boolean
    On Error Resume Next
    Dim myFso As New FileSystemObject
    Dim myFile As File
  If myFso.FileExists(SourseStr) Then
     Set myFile = myFso.GetFile(SourseStr)
     myFile.Copy (WhereStr)
     If WhereStr2 <> "" Then
        myFile.Copy (WhereStr2)
     End If
     CopyFile = True
     Set myFile = Nothing
  Else
     CopyFile = False
  End If
End Function
Public Function DeleteFileX(ByVal strFileAndPath As String) As Boolean
On Error GoTo deleteError
DeleteFileX = False
Dim myFso As New FileSystemObject
Dim myFile As File
If myFso.FileExists(strFileAndPath) = True Then
   Set myFile = myFso.GetFile(strFileAndPath)
   myFile.Attributes = Normal
   myFso.DeleteFile strFileAndPath, True
   DeleteFileX = True
   Set myFile = Nothing
End If
Exit Function
deleteError:
DeleteFileX = False
Err.Clear
End Function
--检查文件是否存在
Public Function IsFileExits(ByVal strFile As String) As Boolean
    On Error GoTo IsFileExitsErr
    IsFileExits = True
    Dim myFso As New FileSystemObject
    If Dir(strFile) = "" And myFso.FileExists(strFile) = False Then
        IsFileExits = False
    End If
    Set myFso = Nothing
    Exit Function
IsFileExitsErr:
    Err.Clear
    IsFileExits = False
End Function
====================================--文件夹操作区--复制文件夹--若要复制C盘下的window文件夹到“d:\dd"文件夹的下面,必须使用--copydir "c:\window\","d:\dd\"表示
Public Function CopyDir(SourseStr As String, WhereStr As String, Optional WhereStr2 As String = "") As Boolean
    On Error GoTo CopyDirErr
    Dim myFso As New FileSystemObject
    Dim myFolder As Folder
  If myFso.FolderExists(SourseStr) Then
     Set myFolder = myFso.GetFolder(SourseStr)
     myFolder.Copy (WhereStr)
     If WhereStr2 <> "" Then
        myFolder.Copy (WhereStr2)
     End If
     CopyDir = True
     Set myFolder = Nothing
  Else
     CopyDir = False
  End If
  ------
  Exit Function
CopyDirErr:
  CopyDir = False
  Err.Clear
End Function
--删除文件 夹
Public Function DeleteDirX(strFileAndPath As String) As Boolean
    On Error GoTo deleteError
    DeleteDirX = False
    -----
    Dim myFso As New FileSystemObject
    Dim myFolder As Folder
    If myFso.FolderExists(strFileAndPath) = True Then
        Set myFolder = myFso.GetFolder(strFileAndPath)
        myFolder.Attributes = Normal
        myFso.DeleteFolder strFileAndPath
        DeleteDirX = True
    End If
    Set myFolder = Nothing
    Set myFso = Nothing
    Exit Function
deleteError:
    DeleteDirX = False
End Function
------
Public Function IsFolderExist(ByVal strFolder As String) As Boolean
    On Error GoTo IsFolderExistERR
    IsFolderExist = False
    -------------------------
    Dim myFso As New FileSystemObject
    If myFso.FolderExists(strFolder) = True Then
        IsFolderExist = True
    End If
    Set myFso = Nothing
    ------------------------------------
    Exit Function
IsFolderExistERR:
    Err.Clear
End Function

--创建新文件夹-在本地创建
Public Function CreateDir(strLongDir As String) As Boolean
    Dim strDir$, i As Integer
    Dim strdirX$
    Dim strN$
    On Error GoTo yy
    Dim myFso As New FileSystemObject
    If Right(strLongDir, 1) <> "\" And Right(strLongDir, 1) <> "/" Then
        strDir = strLongDir & "\"
    Else
        strDir = strLongDir
    End If
    For i = 1 To Len(strDir)
            strN = Mid(strDir, i, 1)
            If strN = "\" Or strN = "/" Then
                If i = 3 Then GoTo xx
                strdirX = Left(strDir, i - 1)
                If myFso.FolderExists(strdirX) = False Then
                    MkDir strdirX
                End If
            End If
xx:
    Next
    CreateDir = True
    Exit Function
yy:
    CreateDir = False
End Function
--得到某个Folder下所有的文件列表
Public Function ShowFolderList(ByVal folderSpec As String) As String
        On Error GoTo ShowFolderListErr
        ShowFolderList = ""
        ------------------------------
        Dim fS As New FileSystemObject, F As Folder, F1 As File, fC As Files, s As String
        Set F = fS.GetFolder(folderSpec)
        Set fC = F.Files
        s = ""
        For Each F1 In fC
            If s = "" Then
                s = F1.Name
            Else
                s = s & "|" & F1.Name
            End If
        Next
        ShowFolderList = s
        -------------
        Exit Function
ShowFolderListErr:
        Err.Clear
End Function
----得到某个FOLDER下所有的夹
Public Function ShowFolderFolderList(ByVal folderSpec As String) As String
   On Error GoTo ShowFolderFolderListERR
   ShowFolderFolderList = ""
   -----------------------
        Dim fS As New FileSystemObject, F As Folder, F1 As Folder, fC As Folders, s As String
        Set F = fS.GetFolder(folderSpec)
        Set fC = F.SubFolders
        s = ""
        For Each F1 In fC
            If s = "" Then
                s = F1.Name
            Else
                s = s & "|" & F1.Name
            End If
        Next
   ShowFolderFolderList = s
   --------------------------
   Exit Function
ShowFolderFolderListERR:
   Err.Clear
End Function

 

VB6文件操作自定义函数合集之一

标签:dir   blog   gdi   nbsp   long   复制文件   false   删除   ror   

原文地址:http://www.cnblogs.com/lhghroom/p/7674756.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!