Кажется, это довольно специфическая проблема, и я не могу найти какие-либо полностью связанные решения (или, по крайней мере, не знаю, что искать).
Итак, у меня есть программа, которая открывает вложенные zip-архивы и находит определенные файлы. Из одного из этих типов файлов мне нужно извлечь соответствующие данные, используя старую программу на C, которую я скомпилировал в .exe и включил в проект. Однако это программа командной строки, в которой относительные пути к файлам вводятся в качестве аргументов. В моем коде файлы поступают в виде потоковых потоков из-за того, что архивы слишком большие для извлечения в целом.
Кажется, я не могу найти никаких подсказок относительно того, как мне поступить с этими потоками, чтобы программа могла извлекать их без распаковки. В настоящее время мой код выглядит следующим образом:
foreach (ZipArchiveEntry entry in archive.Entries)
{
if (entry.FullName.EndsWith(".fileending", StringComparison.OrdinalIgnoreCase))
{
filePresent = true;
Process p = new Process();
p.StartInfo.FileName = "fileExtract.exe";
p.StartInfo.Arguments = ?
p.Start();
}
}
Есть ли способ сделать то, что я пытаюсь, или мне нужно найти другой подход?