Я хотел бы заархивировать несколько файлов в папке, однако мой код ниже работал, но он не застегивал файлы, и я не уверен, что происходит, когда он получает нулевое значение. Пожалуйста, посоветуйтеFilePath Not Getting Zip
private static string filepath = string.IsNullOrEmpty(ConfigurationManager.AppSettings["AConvert"])
? "" : ConfigurationManager.AppSettings["AConvert"];
static void Main(string[] args)
{
string zipFileName;
string fileExt;
try
{
fileExt = Path.GetExtension(filepath);
zipFileName = filepath.Replace(fileExt + DateTime.Now.ToString("MMyy"), ".zip");
using (ZipOutputStream s = new ZipOutputStream(File.Create(zipFileName)))
{
s.Password = "ABC123";
s.SetLevel(4); // 0 - store only to 9 - means best compression
byte[] buffer = new byte[4096];
ZipEntry entry = new ZipEntry(Path.GetFileName(filepath));
entry.DateTime = DateTime.Now;
s.PutNextEntry(entry);
using (FileStream fs = File.OpenRead(filepath))
{
int sourceBytes;
do
{
sourceBytes = fs.Read(buffer, 0, buffer.Length);
s.Write(buffer, 0, sourceBytes);
} while (sourceBytes > 0);
}
s.Finish();
s.Close();
}
}
catch (Exception ex)
{
Console.WriteLine("Exception during processing {0}", ex);
}
}
Есть ли ошибка/исключение? Что это? –
ошибок нет, но FileExt был равен нулю. Это неправильно? –
Вы получаете значение для пути к файлу при вводе функции? – stsur