C#: buffer.blockcopy возвращает null
Я хочу разделить массив байтов на несколько массивов байтов.например,рассмотрим от байтов 0 до 20 в качестве сообщений, а затем от байтов 21 до 129 в качестве ключа.Размер этих массивов берется из текстового поля.затем значения преобразуются в INT32. с помощью друга Я использовал буфер.BlockCopy(Array src, int srcOffset, Array dst, int dstOffset, int count)для этой цели.
Но это работает только тогда, когда я ставлю числовое значение для int count или int source Offset.Когда я использую textbox input возвращает null.Кто-нибудь знает, где я допустил ошибку в приведенном ниже коде?Я был бы признателен вам за помощь.
//define byte arrays byte[] sourceArray = new byte[512]; byte[] msgArray1 = new byte[512]; byte[] keyArray2 = new byte[512]; // take byte count from text box string msgTextBox = msgByteCountTextBox.Text; int msgCount = Int32.Parse(msgTextBox); string keyTextBox = keyCountTextBox.Text; int keyCount = Int32.Parse(keyTextBox); int endOfFile = 5; System.Buffer.BlockCopy(sourceArray, 0, msgArray1, 0, msgCount) msgCount += endOfFile; System.Buffer.BlockCopy(sourceArray, msgCount, keyArray2, 0, keyCount) string msg = Encoding.ASCII.GetString(msgArray1, 0, msgArray1.Length); Console.WriteLine(msg);
Что я уже пробовал:
Я попробовал Array.CopyTo и Convert.Int32 и Int32.TryParse но все равно возвращает null