RPC , string parameter is sent, but length is 0

Hey, this is called by the server

				player.Add(new PlayerStruct{ name = playername, ID = currPlayerJoinedID, isHost = false});
				BinaryFormatter bf = new BinaryFormatter();
				MemoryStream o = new MemoryStream(); 
				bf.Serialize(o, player); 
				string data = Utils.StreamConverter.ConvertMemoryStreamToString(o);
				print (data.Length);
				networkView.RPC("renewPlayerData",RPCMode.Others,data);

And this is the RPC, called by clients

		[RPC]
		void renewPlayerData(string listData)
		{
			
			player.Clear();
			BinaryFormatter bf = new BinaryFormatter();
			MemoryStream ins = new MemoryStream(Encoding.Default.GetBytes(listData)); 
			player = (List<PlayerStruct>)bf.Deserialize(ins);	
		}

The parameter in the clientsection is length 0. But on Server its not 0. It seems that the paramter gets corrupted. Any solutions to that?

Ok, I did it by myself. I just did not send a string, but a byte array.