Wednesday, 7 August 2013

How can i specify string searchPattern using 7z compressor?

How can i specify string searchPattern using 7z compressor?

This is the methos im using for compress files:
private void Compressions(string zipFile,string sources)
{
try
{
string zipFileName = zipFile;
string source = sources;
string output = @"c:\temp";
string programFilesX86 =
System.Environment.GetFolderPath(System.Environment.SpecialFolder.ProgramFilesX86)
+ "\\Diagnostic Tool\\7z.dll";
if (File.Exists(programFilesX86))
{
SevenZipExtractor.SetLibraryPath(programFilesX86);
}
else
{
string path =
Path.GetDirectoryName(Assembly.GetEntryAssembly().Location)
+ "\\7z.dll";
SevenZipExtractor.SetLibraryPath(path);
}
string programFiles =
System.Environment.GetFolderPath(System.Environment.SpecialFolder.ProgramFiles)
+ "\\Diagnostic Tool\\7z.dll";
if (File.Exists(programFiles))
{
SevenZipExtractor.SetLibraryPath(programFiles);
}
else
{
if (File.Exists(programFilesX86))
{
SevenZipExtractor.SetLibraryPath(programFilesX86);
}
else
{
string path =
Path.GetDirectoryName(Assembly.GetEntryAssembly().Location)
+ "\\7z.dll";
SevenZipExtractor.SetLibraryPath(path);
}
}
SevenZipCompressor compressor = new SevenZipCompressor();
compressor.ArchiveFormat = OutArchiveFormat.Zip;
compressor.CompressionMode = CompressionMode.Create;
compressor.TempFolderPath = System.IO.Path.GetTempPath();
string t = Path.Combine(output, zipFileName);
compressor.CompressDirectory(source, t,"*.txt");
this.explorerWindow = Process.Start("explorer",
String.Format("/select,{0}", t));
this.TopMost = true;
}
catch (Exception err)
{
Logger.Write("Zip file error: " + err.ToString());
}
}
This is the line that compress:
compressor.CompressDirectory(source, t,"*.txt");
I tried to add "*.txt" so it will compress only text files but its
compressing many other formats.
When im doing: compressor.CompressDirectory(source, t, The message say:
string searchPattern
I want to compress only text files.

No comments:

Post a Comment