PDA

View Full Version : سوال: از حالت فشرده خارج كردن هر نوع فايل فشرده اي



milad.biroonvand
چهارشنبه 28 مرداد 1388, 10:57 صبح
سلام دوستان


چطور مي تونم ، يك تابع رو استفاده كنم ، كه هر نوع فايلي فشرده اي رو ، از حالت فشرده خارج كنه ، مثلا ، zip ، rar،cab رو از حالت فشرده خارج كنه.

BehzadBar
چهارشنبه 28 مرداد 1388, 11:49 صبح
دوست عزیز در .net برای zip و unzip کردن فایلها دو تا کلاس وجود دارد به نامهای
GZipStream
DeflateStream
طریقه استفاده



Dim sourceFile As FileStream = File.OpenRead(inFilename)
Dim destFile As FileStream = File.Create(outFilename)

Dim compStream As _
New GZipStream(destFile, CompressionMode.Compress)

Dim theByte As Integer = sourceFile.ReadByte()


While theByte <> -1


compStream .WriteByte(CType(theByte, Byte))


theByte = sourceFile.ReadByte()
End While


امیدوارم که مفید باشه

Hossis
چهارشنبه 28 مرداد 1388, 12:05 عصر
نیاز به رفرنس یا ایمپورت نداره؟؟

BehzadBar
چهارشنبه 28 مرداد 1388, 12:08 عصر
نیاز به رفرنس یا ایمپورت نداره؟؟
این کلاسها در System.IO پیاده سازی شده که نیاز به Import داره

BehzadBar
چهارشنبه 28 مرداد 1388, 12:18 عصر
طریقه Unzip کردن



Dim sourceFile As FileStream = File.OpenRead(inFilename)
Dim destFile As FileStream = File.Create(outFilename)

Dim compStream As _
New GZipStream(sourceFile, CompressionMode.DeCompress)

Dim theByte As Integer =

compStream.ReadByte()

While theByte <> -1
destFile


.WriteByte(CType(theByte, Byte))

theByte =


compStream.ReadByte()
End While

milad.biroonvand
پنج شنبه 29 مرداد 1388, 09:10 صبح
سلام با تشكر از پاسخ شما ، ببخشيد اگه مي شود يك مثال اينجا بزاريد كه اگر فايل zip بود ، آن را از حالت فشرده خارج كند ، اگر فايل rar يا cab هم بود آن را از حالت فشرده خارج كند ، بعد اين فايل ها توسط خود .net ساخته نمي شوند ، توسط برنامه winrar فشرده مي شوند .

حالا نظرتون در مورد اين كد چيه ؟



Module UnzipFile
Sub Main()
Dim archiver As New ZipForge()
Try
' The name of the ZIP file to unzip
archiver.FileName = "C:\test.zip"
' Open an existing archive
archiver.OpenArchive(System.IO.FileMode.Open)
' Default path for all operations
archiver.BaseDir = "C:\Temp"
' Extract all files from the archive to C:\Temp folder
archiver.ExtractFiles("*.*")
' Close archive
archiver.CloseArchive()
' Catch all exceptions of the ArchiverException type
Catch ae As ArchiverException
Console.WriteLine("Message: {0} Error code: {1}", ae.Message, ae.ErrorCode)
' Wait for keypress
Console.ReadLine()
End Try
End Sub
End Module



منبع سايت

http://www.componentace.com/unzip-in-vb.net.htm
:چشمک:

BehzadBar
پنج شنبه 29 مرداد 1388, 09:48 صبح
میلاد جان این کلاس ZipForge در کدوم نیم اسپیس پیاده سازی شده ؟

milad.biroonvand
پنج شنبه 29 مرداد 1388, 13:05 عصر
مي توني برا راحتي كار هم از پروژه زير استفاده كني. اين فايل هاي رار رو اكزتركت مي كنه ، كامپونتش هم رايگانه.

milad.biroonvand
پنج شنبه 29 مرداد 1388, 13:06 عصر
میلاد جان این کلاس ZipForge در کدوم نیم اسپیس پیاده سازی شده ؟


بايد اول add refrence bekoni بعد بنويسي

imports zipforg

ACorvinus
پنج شنبه 29 مرداد 1388, 13:07 عصر
اینم از ZipForge dll :

35581

milad.biroonvand
پنج شنبه 29 مرداد 1388, 13:12 عصر
اینم از ZipForge dll :

35581


سوال ، اين ، نسخه آزمايشي اگه نسخه مجانيشو گير بياري بزاري عالي ميشه . موفق باشي

Hossis
پنج شنبه 29 مرداد 1388, 14:43 عصر
این کلاسها در System.IO پیاده سازی شده که نیاز به Import داره



Imports System.IO
Imports System.IO.Compression

milad.biroonvand
یک شنبه 01 شهریور 1388, 11:16 صبح
با تشكر از پست هاتون ، اگه ميشه يك كد بذارين ، كه تمام اعمال فشرده سازي از حالت فشرده خارج كردن رو داشته باشه ؟

اين كتابخونه sysytem.io.comresion برا فايل هاي كب overflow مي شه .

milad.biroonvand
سه شنبه 03 شهریور 1388, 10:46 صبح
سلام ، اگه كسي دو تابع ساخته كه بتونيم با اونها ، يك فايل رو فشرده و از حالت فشرده خارج كنيم ، اينجا بذاره.

milad.biroonvand
چهارشنبه 04 شهریور 1388, 09:23 صبح
با اين پروژه مي تونيد با استفاده از دو تابع فايل هاي زيپ رو از حالت فشرده خارج و دوباره فشرده كنيد ، هر كس تونست كامل ترش كنه ف اسمشو زيز اسم نفر بعدي بنويسه .


دانلود كنيد (http://www.ariagig.com/download.php?act=download&p=ziper.rar&dir=&sid=90e52587f229a1de546ae640bb098f49)

Javad_raouf
سه شنبه 04 اسفند 1388, 20:33 عصر
سلام با تشكر از پاسخ شما ، ببخشيد اگه مي شود يك مثال اينجا بزاريد كه اگر فايل zip بود ، آن را از حالت فشرده خارج كند ، اگر فايل rar يا cab هم بود آن را از حالت فشرده خارج كند ، بعد اين فايل ها توسط خود .net ساخته نمي شوند ، توسط برنامه winrar فشرده مي شوند .

حالا نظرتون در مورد اين كد چيه ؟



Module UnzipFile
Sub Main()
Dim archiver As New ZipForge()
Try
' The name of the ZIP file to unzip
archiver.FileName = "C:\test.zip"
' Open an existing archive
archiver.OpenArchive(System.IO.FileMode.Open)
' Default path for all operations
archiver.BaseDir = "C:\Temp"
' Extract all files from the archive to C:\Temp folder
archiver.ExtractFiles("*.*")
' Close archive
archiver.CloseArchive()
' Catch all exceptions of the ArchiverException type
Catch ae As ArchiverException
Console.WriteLine("Message: {0} Error code: {1}", ae.Message, ae.ErrorCode)
' Wait for keypress
Console.ReadLine()
End Try
End Sub
End Module



منبع سايت

http://www.componentace.com/unzip-in-vb.net.htm
:چشمک:

خیلی چیز توپیه دمت گرم
فقط یکی به من میگه از این Archiver میشه درصد کارت رو بگیری
من که هر کار کردم نشد
می خوام ازش percent بگیره و با یک نخ دیگه نشون بدم ولی نمی دونم گزینش چیه

milad.biroonvand
چهارشنبه 05 اسفند 1388, 08:14 صبح
خیلی چیز توپیه دمت گرم
فقط یکی به من میگه از این Archiver میشه درصد کارت رو بگیری
من که هر کار کردم نشد
می خوام ازش percent بگیره و با یک نخ دیگه نشون بدم ولی نمی دونم گزینش چیه


منظورت از درصد مانند نرم افزار winrar که موقعی که از حالت فشرده خارج می کنه درصد میندازه یا چیزه دیگه ایه ؟

Javad_raouf
چهارشنبه 05 اسفند 1388, 21:04 عصر
منظورت از درصد مانند نرم افزار winrar که موقعی که از حالت فشرده خارج می کنه درصد میندازه یا چیزه دیگه ایه ؟

می خوام یک Progress Bar درست کنم برای همین نیاز به درصد دارم