Comment convertir Akka ByteString en Chaîne?

Je suis désolé si c'est une question stupide, mais honnêtement, je peux pas le comprendre sans mettre en place une sorte de code ASCII -> le caractère mappeur de moi, ce que je ne pense pas de la bonne façon de le faire.

Donc, actuellement, je suis en train de faire une "application de chat" avec Scala, Akka où je utiliser un autre client et le serveur de l'entité. Le client se connecte au serveur, envoie un message, et le serveur n'quelque chose avec elle.

J'ai reçu l'envoi d'un message de travail, mais maintenant je suis bloqué sur la lecture du message de serveur-côté. Chaque fois que je reçois un message, je reçois un ByteString contenant les valeurs ASCII des caractères du message. Comment puis-je convertir ce ByteString dans une Chaîne réelle?

Code (côté serveur):

package chatapp.server

import java.net.InetSocketAddress

import akka.actor.{Actor, ActorSystem}
import akka.io.Tcp._
import akka.io.{IO, Tcp}

/**
  * Created by Niels Bokmans on 30-3-2016.
  */
class ServerActor(actorSystem: ActorSystem) extends Actor {
  val Port = 18573
  val Server = "localhost"

  IO(Tcp)(actorSystem) ! Bind(self, new InetSocketAddress("localhost", Port))

  def receive: Receive = {

    case CommandFailed(_: Bind) =>
      println("Failed to start listening on " + Server + ":" + Port)
      context stop self
      actorSystem.terminate()

    case Bound(localAddress: InetSocketAddress) =>
      println("Started listening on " + localAddress)

    case Connected(remote, local) =>
      println("New connection!")
      sender ! Register(self)
    case Received(data) =>
      println(data)
  }
}

Image de serveur (comme vous pouvez le voir il accepte les connexions -> reçoit une nouvelle connexion -> reçoit un message de la connexion):
Comment convertir Akka ByteString en Chaîne?

Image du client se connecte au serveur et envoie ensuite le message "testmessage")
Comment convertir Akka ByteString en Chaîne?

InformationsquelleAutor nbokmans | 2016-03-30