1
Я искал байты в twitter через java Deflater и столкнулся с проблемами. Сначала выведите, затем код. Что я делаю неправильно здесь, и как я могу нормально обойти эти потоки?Не удалось выполнить круговое отключение через Deflater в Scala
Выход:
scala> new String(decompress(compress("face".getBytes)))
(crazy output string of length 20)
Код:
def compress(bytes: Array[Byte]): Array[Byte] = {
val deflater = new java.util.zip.Deflater
val baos = new ByteArrayOutputStream
val dos = new DeflaterOutputStream(baos, deflater)
dos.write(bytes)
baos.close
dos.finish
dos.close
baos.toByteArray
}
def decompress(bytes: Array[Byte]): Array[Byte] = {
val deflater = new java.util.zip.Deflater
val baos = new ByteArrayOutputStream(512)
val bytesIn = new ByteArrayInputStream(bytes)
val in = new DeflaterInputStream(bytesIn, deflater)
var go = true
while (go) {
val b = in.read
if (b == -1)
go = false
else
baos.write(b)
}
baos.close
in.close
baos.toByteArray
}
Иисус, кричит. Благодаря :) –