Refresh
Без Refresh свойства FileInfo остаются старыми, если файл уже изменили снаружи.
Синтаксис
fileInfo.Refresh();
Пример
Давайте сравним Length до и после File.AppendAllText:
using System;
using System.IO;
class Program
{
static void Main()
{
File.WriteAllText("abcde.txt", "abcde");
var info = new FileInfo("abcde.txt");
long before = info.Length;
File.AppendAllText("abcde.txt", "12345");
long stale = info.Length;
info.Refresh();
long after = info.Length;
Console.WriteLine(before);
Console.WriteLine(stale);
Console.WriteLine(after);
}
}
Результат выполнения кода:
5
5
10
Пример
Давайте обновим Exists после создания файла:
using System;
using System.IO;
class Program
{
static void Main()
{
var info = new FileInfo("abcde.txt");
Console.WriteLine(info.Exists);
File.WriteAllText("abcde.txt", "abcde");
Console.WriteLine(info.Exists);
info.Refresh();
Console.WriteLine(info.Exists);
}
}
Результат выполнения кода:
False
False
True
Смотрите также
-
Exists,
снимок до Refresh -
Length,
размер файла -
LastWriteTime,
время правки -
File,
дозапись файла