Если ваш FileStream.Read
вызов успешен, не существует такого файла, как файл, имеющий плохой байт или поврежденный байт. Каждый байт, который успешно считывается, и часть файла, имеет значение от 0 до 255. То, как оно интерпретируется программой, имеет значение.
Если FileStream.Read
возвращает, например, 5 байтов, то вы можете полагать, что эти 5 байтов успешно прочитаны из файла и все биты байтов были успешно помещены в ваш буфер.
Существует такая вещь, например, как сбойный кластер на вашем жестком диске, и в этом случае чтение будет завершено с некоторым исключением.
Для полноты я также должен упомянуть, что каждый тип файла имеет формат файла. То есть как вы должны интерпретировать двоичные данные. Возможно, что байт или несколько байтов не соответствуют формату файла. Таким образом, вы можете рассматривать байт как поврежденный или недействительный, но он не является действительно поврежденным или недействительным, просто неправильным с точки зрения формата файла.