DotNetZipのIonic.Zip.dll
を使用してファイルを圧縮する方法を作成しようとしています。Windows Mobile 3.5でファイルを圧縮する方法は?
圧縮のためのコード:
using Ionic.Zip;
public string Compress(string[] Paths, string SaveFileName, string Password, string CompressionType)
{
try
{
using (ZipFile zip = new ZipFile())
{
if (Password != string.Empty)
zip.Password = Password;
zip.CompressionLevel = Utility.GetCompressionLevel(CompressionType);
foreach (string item in Paths)
{
if (IsDirectory(item))
zip.AddDirectory(item);
else if (IsFile(item))
zip.AddFile(item);
}
zip.Save(SaveFileName);
}
return ExplorerResource.ResourceManager.GetString("ZipSuccess");
}
catch (Exception ex)
{
return ex.Message;
}
}
カスタムクラス:ZIPプログラムの
public class Utility
{
public static Ionic.Zlib.CompressionLevel GetCompressionLevel(string Expression)
{
Ionic.Zlib.CompressionLevel result = Ionic.Zlib.CompressionLevel.None;
if (Ionic.Zlib.CompressionLevel.BestCompression.ToString().ToUpper() == Expression.Trim().ToUpper())
result = Ionic.Zlib.CompressionLevel.BestCompression;
if (Ionic.Zlib.CompressionLevel.BestSpeed.ToString().ToUpper() == Expression.Trim().ToUpper())
result = Ionic.Zlib.CompressionLevel.BestSpeed;
if (Ionic.Zlib.CompressionLevel.Default.ToString().ToUpper() == Expression.Trim().ToUpper())
result = Ionic.Zlib.CompressionLevel.Default;
if (Ionic.Zlib.CompressionLevel.Level0.ToString().ToUpper() == Expression.Trim().ToUpper())
result = Ionic.Zlib.CompressionLevel.Level0;
if (Ionic.Zlib.CompressionLevel.Level1.ToString().ToUpper() == Expression.Trim().ToUpper())
result = Ionic.Zlib.CompressionLevel.Level1;
if (Ionic.Zlib.CompressionLevel.Level2.ToString().ToUpper() == Expression.Trim().ToUpper())
result = Ionic.Zlib.CompressionLevel.Level2;
if (Ionic.Zlib.CompressionLevel.Level3.ToString().ToUpper() == Expression.Trim().ToUpper())
result = Ionic.Zlib.CompressionLevel.Level3;
if (Ionic.Zlib.CompressionLevel.Level4.ToString().ToUpper() == Expression.Trim().ToUpper())
result = Ionic.Zlib.CompressionLevel.Level4;
if (Ionic.Zlib.CompressionLevel.Level5.ToString().ToUpper() == Expression.Trim().ToUpper())
result = Ionic.Zlib.CompressionLevel.Level5;
if (Ionic.Zlib.CompressionLevel.Level6.ToString().ToUpper() == Expression.Trim().ToUpper())
result = Ionic.Zlib.CompressionLevel.Level6;
if (Ionic.Zlib.CompressionLevel.Level7.ToString().ToUpper() == Expression.Trim().ToUpper())
result = Ionic.Zlib.CompressionLevel.Level7;
if (Ionic.Zlib.CompressionLevel.Level8.ToString().ToUpper() == Expression.Trim().ToUpper())
result = Ionic.Zlib.CompressionLevel.Level8;
if (Ionic.Zlib.CompressionLevel.Level9.ToString().ToUpper() == Expression.Trim().ToUpper())
result = Ionic.Zlib.CompressionLevel.Level9;
return result;
}
GUI:
しかし、私は圧縮を開始するとき、私はこのエラーを取得していますファイル。
私は、コードを.NETバージョンとの互換性がありませんと思いますか?
私は誰かがこれのための解決策を作ることができることを望む、またはあなたが方法を実行するより良い方法を持っている場合は教えてください..事前に感謝!
ワウ!迅速かつ正確な対応!それは今働く。どうもありがとう! – fiberOptics