Решение найдено.Zip File Entry имеет расширение пользовательского файла. C# утверждает, что он не может открыть
Благодаря всем, кто мне помогает, я узнал, в чем была проблема с корнем. Файл .trl не имел к этому никакого отношения. Это был неправильный путь. Я делал «TRLR» + Path, когда это должно было быть «TRLR» + fileName. Это была глупая ошибка с моей стороны, и я приношу извинения за то, что тратил ваше время, но я ценю помощь!
У меня есть почтовый файл, предоставленный нам третьим лицом. В этом zip-файле находятся пользовательские файлы. Это всего лишь текстовые файлы с другим расширением, которое, как я полагаю, просто расстраивает меня.
Я пытаюсь открыть эти файлы в своем приложении C#, но он продолжает бросать ошибку, что формат не поддерживается.
Поскольку это только текстовые файлы, я считаю, что для этого должно быть что-то.
Если у кого-либо есть идеи, пожалуйста, дайте мне знать.
Код:
using (ZipArchive archive = ZipFile.OpenRead(_trailerName))
{
ZipArchiveEntry entry = archive.GetEntry(tableChanged + ".trl");
Stream ms = entry.Open(); //Here is what's causing the issue.
StreamReader reader = new StreamReader(ms);
string allLinesRead = reader.ReadToEnd();
string[] everyCell = allLinesRead.Split('|');
int numRecords = Convert.ToInt32(everyCell[1]);
int numChanged = getRecordNum(tableChanged);
Console.Write(numRecords + "/" + numChanged + " - " + tableChanged);
if (numChanged != numRecords)
{
_errorMessage += "Records updated do not match trailer. (" + numRecords + "/" + numChanged + ") Please check database. Table affected: " + tableChanged + Environment.NewLine;
}
}
Ошибка:
The given path's format is not supported.
Я знаю, что это конкретно, но мне нужен совет о том, какие шаги я могу предпринять, чтобы решить эту проблему.
Спасибо.
Откройте файл в своем любимом текстовом редакторе (например, блокнот ++), начинается ли файл с 'PK'? – paqogomez
Это не так. Он открывается точно так же, как и любой другой текстовый файл. –
Начните с открытия WinZip и извлеките все файлы. –