Здравствуйте, lumf, Вы писали:
L>>Здравствуйте, Mr Muskul, Вы писали:
MM>>>Вот работающий пример
L>>а что zip и gzip это одно и тоже?
L> не совсем, в любом случае тебе нужно решить конкретную задачку "необходимо сжать\разжать строку. вроде как начал двигаться в сторону вот этой тулзы ICSharpCode.SharpZipLib.dll"
L> так то оно так, но смотри сабж. мне нужно это реализовать gzipom
можно сделать так, с использованием все той же SharpZipLib
string srcString = "...";
byte[] srcBytes = Encoding.UTF8.GetBytes(srcString);
MemoryStream compressedStream = new MemoryStream();
using (GZipOutputStream outStream = new GZipOutputStream(compressedStream))
{
outStream.Write(srcBytes, 0, srcBytes.Length);
}
byte[] compressedBytes = compressedStream.ToArray();
compressedStream = new MemoryStream(compressedBytes);
MemoryStream targetStream = new MemoryStream();
using (GZipInputStream inStream = new GZipInputStream(compressedStream))
{
byte[] buffer = new byte[2048];
int bytesRead;
while ((bytesRead = inStream.Read(buffer, 0, buffer.Length)) > 0)
{
targetStream.Write(buffer, 0, bytesRead);
}
}
string resultString = Encoding.UTF8.GetString(targetStream.ToArray());