Я открываю, распаковываю и читаю файл с удаленного общего ресурса, используя следующий код:
using (FileStream fs = new FileStream(file, FileMode.Open, FileAccess.Read, FileShare.Read, 2 << 18))
using (ZipArchive za = new ZipArchive(fs))
{
foreach (ZipArchiveEntry zae in za.Entries)
using (StreamReader sr = new StreamReader(zae.Open(), Encoding.GetEncoding(1251), true, 2 << 18))
{
while (!sr.EndOfStream)
{
// reading logic
}
}
}
Как проверить, не поврежден ли загруженный архив?