я могу преобразовать string[]
в byte[]
, как в следующем коде:Как преобразовать массив строк в массив байтов, используя Array ConvertAll?
byte[] k = {255, 150, 155, 255, 255, 255, 255, 255, 255, 255, 55, 55, 15, 55, 155, 55};
string st = BitConverter.ToString(Array.ConvertAll(k, Convert.ToByte));
byte[] kk = new byte[16];
string[] sts = st.Split('-');
for (int i = 0; i < 16; i++)
{
kk[i] = Convert.ToByte(sts[i], 16);
}
Но я не могу сделать то же самое с LINQ как в коде ниже:
Array.ConvertAll(sts,item=>(byte) Convert.ToByte(item, 16))
Как сделать эту работу в LINQ?
Почему он не работает в «Немедленном окне» Visual Studio?
Лямбда-выражения не работают в окнах «Немедленное» и «Смотреть».
Спасибо .. это работало. Но почему это вызывает ошибку в окне Immediate (во время отладки)? –
Я не понимаю ваш вопрос. Я не догоняю никаких исключений или ошибок. –
Когда я пытаюсь использовать тот же код (при отладке) в окне «Немедленное окно» ошибки Visual Studio 2015 System.NotSupportedException. –