Я пытаюсь отправить значение по сокету. Итак, у меня есть две части в моем проекте Client
и server
.
client
отправляет значение на сервер, используя этот код:
System.IO.BinaryWriter binaryWriter =
new System.IO.BinaryWriter(networkStream);
binaryWriter.Write(1);
binaryWriter.Write(2);
binaryWriter.Flush();
Итак, в другой части мне нужно прочитать два значения, которые я имею в виду 1
и 2
;
Итак, в серверной части у меня есть этот код:
static void Listeners()
{
Socket socketForClient = tcpListener.AcceptSocket();
if (socketForClient.Connected)
{
NetworkStream networkStream = new NetworkStream(socketForClient);
while (true)
{
List<int> variables = new List<int>();
using (var reader = new BinaryReader(networkStream))
{
for (int i = 0; i < 2; i++)
{
int t = reader.ReadInt32();
variables.Add(t);
}
}
}
}
}
Как видите, я храню значения в списке variables
. Но это не работает. Я имею в виду, что в серверной части я не могу получить значения 1
и 2
, и мои значения такие: 841757955
с уважением.
StreamReaders
иStreamWriters
, но затем, похоже, не используете их. Вместо того, чтобы использоватьBinaryReader
на сервере, попробуйте вместо этого использоватьStreamReader
. - person Daniel Kelley   schedule 27.06.2014BinaryWriter
вместоStreamWriter
? Вопрос определенно нуждается в обновлении, и, пожалуйста, удалите неиспользуемые переменные из фрагментов кода. - person Daniel Kelley   schedule 27.06.2014BinaryWriter
и чтение с помощьюBinaryWriter
должны быть совместимы до сих пор? - person peter_the_oak   schedule 27.06.2014BinaryWriter
и чтение сBinaryReader
будут совместимы, чего не происходило в исходной версии этого вопроса. - person Daniel Kelley   schedule 27.06.2014