Я хочу сжать папку в файл с расширением .7z, с 7zip.Как сжать папку с 7Zip в C#?
Я хотел бы знать, как бы я это сделать, потому что я не уверен (поэтому я спрашиваю.)
Это в C#.
Полезные ссылки на страницы или примеры кода.
Я хочу сжать папку в файл с расширением .7z, с 7zip.Как сжать папку с 7Zip в C#?
Я хотел бы знать, как бы я это сделать, потому что я не уверен (поэтому я спрашиваю.)
Это в C#.
Полезные ссылки на страницы или примеры кода.
Я согласен, что это дубликат, но я использовал демо от этого CodeProject раньше, и это очень полезно:
http://www.codeproject.com/Articles/27148/C-NET-Interface-for-7-Zip-Archive-DLLs
Прокрутка вниз страницы для демонстрации и удачи!
Прошу прощения, если это дубликат. Объект поиска не работал. Хотя, я проверю это. – user3026440
код застегнуть или расстегнуть молнию файл, используя 7zip
этот код используется, чтобы пронестись в папку
public void CreateZipFolder(string sourceName, string targetName)
{
// this code use for zip a folder
sourceName = @"d:\Data Files"; // folder to be zip
targetName = @"d:\Data Files.zip"; // zip name you can change
ProcessStartInfo p = new ProcessStartInfo();
p.FileName = @"D:\7-Zip\7z.exe";
p.Arguments = "a -t7z \"" + targetName + "\" \"" + sourceName + "\" -mx=9";
p.WindowStyle = ProcessWindowStyle.Hidden;
Process x = Process.Start(p);
x.WaitForExit();
}
Этот код используется, чтобы пронестись файл
public void CreateZip(string sourceName, string targetName)
{
// file name to be zip , you must provide file name with extension
sourceName = @"d:\ipmsg.log";
// targeted file , you can change file name
targetName = @"d:\ipmsg.zip";
ProcessStartInfo p = new ProcessStartInfo();
p.FileName = @"D:\7-Zip\7z.exe";
p.Arguments = "a -tgzip \"" + targetName + "\" \"" + sourceName + "\" -mx=9";
p.WindowStyle = ProcessWindowStyle.Hidden;
Process x = Process.Start(p);
x.WaitForExit();
}
этот код используется для разморозки
public void ExtractFile(string source, string destination)
{
// If the directory doesn't exist, create it.
if (!Directory.Exists(destination))
Directory.CreateDirectory(destination);
string zPath = @"D:\7-Zip\7zG.exe";
try
{
ProcessStartInfo pro = new ProcessStartInfo();
pro.WindowStyle = ProcessWindowStyle.Hidden;
pro.FileName = zPath;
pro.Arguments = "x \"" + source + "\" -o" + destination;
Process x = Process.Start(pro);
x.WaitForExit();
}
catch (System.Exception Ex) { }
}
Здесь fileDirPath - это путь к моей папке, в которой есть все мои файлы, а preferredPath - это путь, где я хочу, чтобы мой .zip-файл был.
например: var fileDirePath = @ "C: \ Temp"; var prefferedPath = @ "C: \ Output \ results.zip";
private void CreateZipFile(string fileDirPath, string prefferedPath)
{
ProcessStartInfo p = new ProcessStartInfo();
p.FileName = @"C:\Program Files\7-Zip\7z.exe";
p.Arguments = "a \"" + prefferedPath + "\" \"" + fileDirPath + "\"";
p.WindowStyle = ProcessWindowStyle.Hidden;
Process x = Process.Start(p);
x.WaitForExit();
return;
}
Возможный дубликат этого вопроса, http://stackoverflow.com/questions/7646328/how-to-use-the-7z-sdk-to-compress-and-decompress-a-file –
Для простое решение, используйте ['Process.Start'] (http://msdn.microsoft.com/en-us/library/system.diagnostics.process.start (v = vs.110) .aspx) (для этого требуется 7zip для быть установленным). В противном случае см. [LZMA SDK] (http://www.7-zip.org/sdk.html) –
Я хочу просто сжать его в файл .7z, вот и все. – user3026440