无法删除数据库文件

时间:2011-10-20 10:55:27

标签: vb.net visual-studio

使用VB.Net

我无法删除数据库文件。文件也没有使用。

 File.Delete("G:\1.txt") - It is deleting the file

 File.Delete("G:\DB1.bak") - It is not deleting

我也使用下面的代码,

Kill("G:\DB1.bak") - It is also not deleting

我的代码有什么问题。

3 个答案:

答案 0 :(得分:1)

因为,你说文件没有被使用。然后参考以下代码部分删除传递给它的目录中的所有文件。

Sub DeleteFiles(ByVal Dir As String)
        Dim DirObj As New DirectoryInfo(Dir)

        Dim Files As FileInfo() = DirObj.GetFiles("*.bak")
        Dim Dirs As DirectoryInfo() = DirObj.GetDirectories("*.*")

        Dim Filename As FileInfo

        For Each Filename In Files
            Try
                File.Delete(Filename.FullName)
                Console.WriteLine("Deleted {0}", Filename.FullName)
            Catch E As Exception
                Console.WriteLine("Error deleting {0}", Filename.FullName)
                Console.WriteLine("Error: {0}", E.Message)
            End Try
        Next

        Dim DirectoryName As DirectoryInfo

        For Each DirectoryName In Dirs
            Try
                DeleteFiles(DirectoryName.FullName)
            Catch E As Exception
                Console.WriteLine("Error accessing {0}", DirectoryName.FullName)
                Console.WriteLine("Error: {0}", E.Message)
            End Try
        Next

    End Sub

答案 1 :(得分:0)

代码对我来说没问题。可能是该文件正由另一个进程使用,或者您(用户)无权删除它。

答案 2 :(得分:0)

您的文件可能正在使用中。

要确定我肯定会建议使用Unlocker工具http://www.emptyloop.com/unlocker/来检查您的文件的使用者是谁或什么,有可能使用错误。