Я пытаюсь сжать некоторый текст в своем приложении UWP. Я создал этот метод, чтобы упростить его позже:
public static byte[] Compress(this string s)
{
var b = Encoding.UTF8.GetBytes(s);
using (MemoryStream ms = new MemoryStream())
using (GZipStream zipStream = new GZipStream(ms, CompressionMode.Compress))
{
zipStream.Write(b, 0, b.Length);
zipStream.Flush(); //Doesn't seem like Close() is available in UWP, so I changed it to Flush(). Is this the problem?
return ms.ToArray();
}
}
Но, к сожалению, это всегда возвращает 10 байтов, независимо от входного текста. Это потому, что я не использую .Close()
на GZipStream
?