Как изменить размер массива - C#
Формулировка задачи:
Здравствуйте КиберФорум. Я хочу написать программу для передачи данных по NetworkStream.. так вот при отправке данных массив байтов, я создаю под длине строки(т.е string name = "Вася"; значит byte[] buffer = new byte[name.Lenght])
А вот принимать данные не получается нормально, я создаю массив byte[] buffer = new byte[1024]; И когда принимаю данные у меня остается куча свободного места, я пробовал его обрезать Trim() функцией, но не получается. Так вот как поменять размер массива на кол-во символов в строке? Вот код сервера:
Вот код клиента:
static void Main(string[] args)
{
Console.WriteLine("Hello :) Now i'm waiting for new connect");
TcpListener listener = new TcpListener (IPAddress.Parse("127.0.0.1"), 4000);
listener.Start();
while(true)
{
TcpClient client = listener.AcceptTcpClient();
NetworkStream stream = client.GetStream();
if(stream.CanWrite)
{
string data = "Hello client";
byte[] buffer = Encoding.Default.GetBytes(data);
stream.Write(buffer,0,data.Length);
Console.WriteLine("Sended");
}
}
} static void Main(string[] args)
{
TcpClient client = new TcpClient ("127.0.0.1", 4000);
string data;
byte[] buffer = new byte[155];
NetworkStream stream = client.GetStream();
int i = stream.Read(buffer,0,buffer.Length);
data = Encoding.Default.GetString(buffer,0,buffer.Length);
Console.WriteLine("Receive: {0}", data);
Console.ReadLine();
}Решение задачи: «Как изменить размер массива»
textual
Листинг программы
string name = "Вася";
char [] arr = name.ToCharArray(); // {'В', 'а', 'с', 'я'};