检查文件是否存在并保存带增量的新文件

时间:2014-05-16 01:06:22

标签: vb.net

所以我知道如何增加。我有以下代码:

Dim startFileName As String = StorageRoot & endFile
Dim endFileName As String = String.Empty
Dim Counter As Integer = 1

Do
    Dim myFileInfo As New FileInfo(startFileName)
    endFileName = myFileInfo.DirectoryName & IIf(Not myFileInfo.DirectoryName.EndsWith("\"), "\", String.Empty).ToString & _
                  Path.GetFileNameWithoutExtension(startFileName) & Counter & myFileInfo.Extension
    Counter += 1
Loop Until Not IO.File.Exists(endFileName)

endFile = endFileName

这很有效。但这是我的困境。假设存在以下文件:

filename_v1.ext filename_v2.ext filename_v3.ext filename_v4.ext

然后用户删除其中一个,假设为filename_v3.ext

在使用上述逻辑进行下一次上传时,我需要一种方法让它再次成为v5而不是v3。现在的样子,它在v2之后循环并停止并再次创建一个v3。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您可以从Directory.GetFiles(path, searchPattern)获取与filename_v*.ext匹配的所有文件的数组。

Dim files As String() = Directory.GetFiles("c:\SomePath", "filename_v*.ext")

_v之后解析数字,对它们进行排序,然后取最高+1。