Проблема в том, что newZips устанавливается перед тем, как вы на самом деле создаете переименованные файлы zip. Вам нужно будет переместить строку:
string[] newZips = Directory.GetFiles(path, "*.zip");
.., чтобы она появлялась после первого foreach l oop.
Если ваша конечная цель - создать только новый почтовый индекс с содержимое файлов * .unique, возможно, вы можете избежать переименования файлов. Вы можете сделать что-то похожее на следующее, чтобы извлечь файлы во временную папку и создать новый zip из этих файлов:
string path = txtField.text;
string[] originalFiles = Directory.GetFiles(path, "*.unique");
try
{
var extractedFilesPath = Path.Combine(path, "ExtractedFiles");
var newZipFile = Path.Combine(path, "NewZipFile.zip");
foreach (var item in originalFiles)
{
ZipFile.ExtractToDirectory(item, extractedFilesPath);
}
ZipFile.CreateFromDirectory(extractedFilesPath, newZipFile);
Directory.Delete(extractedFilesPath, true);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Fail....");
}