I
Imposter
вопрос в чем необходимо по сети передать текст на кирилице, но вместо текста получаю только "??????" в чем ошибка или как исправить
листенер:
клиент:
Передаваемый массив:
листенер:
C++:
byte[] data = new byte[Received.Length * 16]; //массив байт для передачи сообщения
// c_time += (double)timer1.Interval / 1000;
server.Start();
// Byte[] bytes = new Byte[256];
TcpClient client = new TcpClient();
client = server.AcceptTcpClient();
//получение информации от клиента
NetworkStream stream = client.GetStream();
int i;
//_________________________________ПОЛУЧЕНИЕ И ОТПРАВКА ДАННЫХ______________
//принимаем данные от клиента пока не дойдем до конца.
data = new Byte[256]; // масив для хранения принятых данных
String responseData = String.Empty;
Int32 bytes = stream.Read(data, 0, data.Length); // получение данных в bytes
responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes); // перевод в строку
// разбиение строки на массив строк
String[] Received_line = responseData.Split(new char[] { '_' }, StringSplitOptions.RemoveEmptyEntries);
for (int j = 0; j < Received_line.Length; j++)
{
Received[j] = Convert.ToString(Received_line[j]);
}
клиент:
C++:
try
{
//создаем TCPClient для Listener
// настраиваем под тот же адресс и порт
TcpClient client = new TcpClient("127.0.0.1", 9595);
byte[] data = new byte[Sent_to.Length * 8]; //массив байт для передачи сообщения
//получение потока для чтения и записи
NetworkStream stream = client.GetStream();
//отправка сообщения серверу
for (int i = 0; i < Sent_to.Length; i++)
SentTo_Line = SentTo_Line + Convert.ToString(Sent_to[i]) + "_";
byte[] msg = System.Text.Encoding.ASCII.GetBytes(SentTo_Line);
stream.Write(msg, 0, msg.Length);
SentTo_Line = "";
stream.Close();
}
Передаваемый массив:
C++:
string[] Sent_to = {
"Hello wold1 #",
"Привет мир",
"qweqwe",
"sdfsdfsdf",
"asdsadasd"
};