VB. net проверить, если файл полностью скопирован, прежде чем перемещать этот файл в резервную папку - PullRequest
0 голосов
/ 27 февраля 2020

У меня есть программное обеспечение для записи видео, которое будет записывать видео файлы в каталоге. и я пишу код vb. net для перемещения готовых файлов в другой каталог (внешний жесткий диск). Я перемещаю только файлы, которые закончили запись.

Мне нужно только переместить файлы, которые закончили запись. Проблема в том, что мой код перемещает файлы, которые все еще записываются. мой вопрос: как я могу проверить, не записывается ли файл прямо сейчас? Спасибо

1 Ответ

0 голосов
/ 27 февраля 2020

В следующем коде вы будете лучше знать, сколько времени с момента записи файла указывает на завершение.

    Dim di As New IO.DirectoryInfo(dirPath)
    Dim noMod As New TimeSpan(0, 2, 0) 'last write time
    Dim _movTM As DateTime = DateTime.Now.Add(-noMod)

    For Each fi As IO.FileInfo In di.GetFiles
        If fi.LastWriteTime < _movTM Then
            'move here
        End If
    Next
...