byte[] to enum



  • Hallo,

    ich möchte Pakete über das Netzwerk verschicken und empfangen. Jedes Paket hat eine ID. Diese sind in einem Enum kodiert:

    public enum PACKET_ID {
    		PLAYER_MOVED,
    		FIELD_REQUEST,
    		DISCONNECTED
    	}
    

    Das Verschicken sieht so aus:

    private byte[] constructPacket(PACKET_ID id, Tuple<int, int> position)
    {
      List<byte> packet = new List<byte>();
      packet.Add((byte)id);
      // ...
    }
    

    Beim Empfangen weiß ich nicht, wie ich byte[] in PACKET_ID caste:

    private PACKET_ID ReadPacketID(TcpClient client) 
    {
    	byte[] data = new byte[4];
    	client.GetStream().Read(data, 0, 4);
    	return (PACKET_ID)data; // Konvertierung nicht möglich
    

    Wie nehme ich solch eine Konvertierung vor?


  • Administrator

    Ist das wirklich eine ernst gemeinte Frage? 😕
    (PACKET_ID)data[0]


Anmelden zum Antworten