DriveInfo.TotalSize не указывает правильное значение или, возможно, указывает, но в моем случае его нельзя использовать.

Мне нужно найти общий размер диска, однако, если диск полностью пуст ... почему при выводе окна сообщения с AvailableFreeSpace и TotalSize получается два разных значения?

if (drive.AvailableFreeSpace != drive.TotalSize) { /* copy data to another drive. */ }
c#
2
bl4kh4k 15 Сен 2013 в 19:52
Дает ли этот вопрос ваш ответ? stackoverflow.com/questions/7275806/…
 – 
Paul D'Ambra
15 Сен 2013 в 19:56
Нет, я хочу знать общий размер, чтобы я мог взять (totalsize - availablefreespace).
 – 
bl4kh4k
15 Сен 2013 в 20:03
Наверное, лучше всего добавить код и продемонстрировать, что тогда значения неверны.
 – 
Paul D'Ambra
15 Сен 2013 в 20:04
отформатированный диск требует дополнительных затрат для файловой системы. Это занимает место для хранения индекса файла. Другое хранилище, которое вы теперь можете увидеть, - это корзина. Просто перечислите корневой каталог, чтобы увидеть файлы, которые вы, возможно, захотите скопировать.
 – 
Hans Passant
15 Сен 2013 в 21:07
Это был мой запасной план, я просто хотел избежать накладных расходов. Ваше здоровье.
 – 
bl4kh4k
15 Сен 2013 в 21:11

1 ответ

Лучший ответ

В MSDN есть примечание о свойстве AvialableFreeSpace, в котором говорится:

Это свойство указывает количество свободного места на диске. Обратите внимание, что это число может отличаться от числа TotalFreeSpace, поскольку это свойство учитывает дисковые квоты.

Ссылка: http://msdn.microsoft.com/en -us / library / system.io.driveinfo.availablefreespace.aspx

1
Irvin Dominin 15 Сен 2013 в 19:58
Я читал документацию ранее, но есть ли способ проверить общий размер диска, где, если он пуст ... два свойства равны одному и тому же результату? PS: Ваш аватар потрясающий.
 – 
bl4kh4k
15 Сен 2013 в 20:05
Странно, проверю причину, почему PS Большое спасибо :-)
 – 
Irvin Dominin
15 Сен 2013 в 20:08
Вам нужно освободить место на диске? Можете ли вы опубликовать свои плохие ценности?
 – 
Irvin Dominin
15 Сен 2013 в 20:16
В настоящее время диск пуст, AvailableFreeSpace возвращает 3984584704, а TotalSize возвращает 3984588800.
 – 
bl4kh4k
15 Сен 2013 в 20:23