Diminuir o tamanho das mensagens enviadas em redes, chamadas de WebServices, WCF, etc.
Segue abaixo o código para compressão e descompressão utilizando o algoritmo GZip, que já vem dentro do .Net framework.
Comprimir:
Public Shared Function Comprime(ByVal texto As String) As Byte()
Dim mem As MemoryStream = New MemoryStream()
Dim gz As GZipStream = New GZipStream(mem, CompressionMode.Compress)
Dim sw As New StreamWriter(gz)
sw.WriteLine(texto)
sw.Close()
Return mem.ToArray()
End Function
Descomprimir:
Public Shared Function Descomprime(ByVal valor As Byte()) As String
Dim retorno As String = Nothing
Dim mem As New MemoryStream(valor)
Dim gz As GZipStream = New GZipStream(mem, CompressionMode.Decompress)
Dim sr As StreamReader = New StreamReader(gz)
retorno = sr.ReadLine()
sr.Close()
Return retorno
End Function
Simples!
Abs
Nenhum comentário:
Postar um comentário