PDA

View Full Version : مشکل در کار با gzipstream



deviant
دوشنبه 06 اسفند 1386, 19:46 عصر
سلام دوستان

من از کلاس gzipstream برای فشرده کردن یک فایل استفاده کردم. ولی برای decompress با مشکل مواجه شدم اگه ممکنه یکم راهنمایی کنید.
با مثال MSDN هم مشکلم حل نشد.

اگه کمک کنید یک دنیا ممنون میشم.

hassan razavi
دوشنبه 06 اسفند 1386, 21:57 عصر
دوست عزیز نمونه برنامه ای که نوستید یا کدتون را ارسال کنید تا بررسی کنیم.
البته توی همین تالار هم فکر کنم یه نمونه برنامه باشه. جستجو کنید ضرری نداره.

deviant
چهارشنبه 08 اسفند 1386, 22:24 عصر
این کد Compress :


private bool getBackup(string filename)
{
FileStream fStream;
try
{
fStream = new FileStream(Application.StartupPath + "\\DB\\phonebook.mdf", FileMode.Open, FileAccess.Read);
byte[] buffer = new byte[fStream.Length];
int count = fStream.Read(buffer, 0, buffer.Length);
if (count != buffer.Length)
{
fStream.Close();
return false;
}
fStream.Close();
MemoryStream ms = new MemoryStream();
GZipStream gzip = new GZipStream(ms, CompressionMode.Compress, true);
gzip.Write(buffer, 0, buffer.Length);
gzip.Close();
byte[] buf = new byte[ms.Length];
ms.Read(buf, 0, (int)ms.Length);
fStream = File.Create(filename);
fStream.Write(buf, 0, buf.Length);
fStream.Close();
return true;
}
catch
{
return false;
}
}
اینم قسمت Decompress


FileStream fs = new FileStream(txtPath.Text, FileMode.Open, FileAccess.Read);
byte[] buf = new byte[fs.Length];
fs.Read(buf, 0, buf.Length);
fs.Close();
MemoryStream ms = new MemoryStream();
ms.Write(buf, 0, buf.Length);
ms.Position = 0;
GZipStream gzip = new GZipStream(ms, CompressionMode.Decompress);
byte[] buffer = new byte[buf.Length + 10000000];
gzip.Read(buffer, 0, 100);

اگه ممکنه یک کمک کنید . مرسی

deviant
جمعه 10 اسفند 1386, 10:04 صبح
بابا دمتون گرم هیچکی نبود به ما کمک کنه...