我有一个 Kotlin 对象,需要将其转换为字节数组 (byte[]
)。我知道如何将字符串和一系列其他类型的变量转换为 byte[]
,但我找不到任何关于如何使用对象进行此操作的内容。
这是我尝试过的:
override fun activateQuestion(instructorUserName: String, host: String, port: Int, questionToActivate: MultipleChoiceQuestion) {
val socket = DatagramSocket()
//This is the problem -- `.toByteArray(...)` only works for Strings
val questionToActivateAsByteArray = questionToActivate.toByteArray(Charsets.UTF_8)
//send byte[] data
val packet = DatagramPacket(questionToActivateAsByteArray, questionToActivateAsByteArray.size, InetAddress.getByName(host), port)
socket.send(packet)
}
ObjectMapper
,并将您的对象转换为字符串后作为字节发送。 - flakes