I have a variable value declared as Any in my program.
I want to convert this value to Array[Byte].
How can I serialize to Array[Byte] and back? I found examples related to other types such as Double or Int, but not to Any.
This should do what you need. It's pretty similar to how one would do it in Java.
import java.io.{ByteArrayInputStream, ByteArrayOutputStream, ObjectInputStream, ObjectOutputStream}  object Serialization extends App {    def serialise(value: Any): Array[Byte] = {     val stream: ByteArrayOutputStream = new ByteArrayOutputStream()     val oos = new ObjectOutputStream(stream)     oos.writeObject(value)     oos.close()     stream.toByteArray   }    def deserialise(bytes: Array[Byte]): Any = {     val ois = new ObjectInputStream(new ByteArrayInputStream(bytes))     val value = ois.readObject     ois.close()     value   }    println(deserialise(serialise("My Test")))   println(deserialise(serialise(List(1))))   println(deserialise(serialise(Map(1 -> 2))))   println(deserialise(serialise(1))) } 
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With