Ответ 1
FileInfo.Length
вернет длину файла в байтах (не размер на диске), так что это то, что вы ищете, я думаю.
Мне нужен способ получить размер файла с помощью С#, а не размер на диске. Как это возможно?
В настоящее время у меня этот цикл
foreach (FileInfo file in downloadedMessageInfo.GetFiles())
{
//file.Length (will this work)
}
Будет ли это возвращать размер или размер на диске?
FileInfo.Length
вернет длину файла в байтах (не размер на диске), так что это то, что вы ищете, я думаю.
Если у вас уже есть путь к файлу в качестве ввода, это код, который вам нужен:
long length = new System.IO.FileInfo(path).Length;
FileInfo.Length
выполнит трюк (для MSDN it) [g] задает размер в байтах текущего файла. ") Существует хорошая страница в MSDN по общим задачам ввода-вывода.
MSDN FileInfo.Length говорит, что это "размер текущего файла в байтах".
Мой обычный поиск Google для чего-то вроде этого: msdn FileInfo
Он возвращает длину содержимого файла
Размер на диске может быть другим, если вы переместите файл в другую файловую систему (FAT16, NTFS, EXT3 и т.д.)
Как сказали другие ответчики, это даст вам размер в байтах, а не размер на диске.
Я получаю размер файла с File.ReadAllBytes(@"D:\\testPA.txt").Length