1 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 46
|
||||||
1 | ||||||
.NET 4.x Преобразование из String в byte[]05.10.2016, 22:53. Показов 2154. Ответов 8
Метки нет (Все метки)
Необходимо преобразовать строку String в byte[].
Пробую сделать по ссылке: https://msdn.microsoft.com/ru-... s.90).aspx пишу так:
Хотя у меня прописаны using System; и using System.Text; Что я делаю не так?
0
|
05.10.2016, 22:53 | |
Ответы с готовыми решениями:
8
Преобразование byte в string Преобразование string --> byte[] --> int[] Осуществить преобразование IEnumerable<string[]> to byte[] Преобразование типов string в byte и в Hex |
1 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 46
|
|
06.10.2016, 07:44 [ТС] | 3 |
Я сразу до конца не объяснил чего хочу.
Эта строка переводит символы в байт, а мне необходимо чтоб в строке любой длины, например "11111" перевести все числа (не обязательно единицы) в byte[] чтоб получилось {0x01, 0x01, 0x01, 0x01, 0x01}. Есть для этого готовые способы?
0
|
Администратор
|
||||||
06.10.2016, 07:52 | 4 | |||||
Ellissar, если в строке буду только цифры, то можно вот так (для буферов разумной длины)
Если в строке могут быть не только цифры, то перечисли разрешенные символы и поясни правила преобразования.
0
|
1 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 46
|
|
06.10.2016, 08:30 [ТС] | 5 |
По строке 2 вроде понятно что делается выборка и преобразование, но поправьте если я где-то ошибся.
Из строки s поочередно выбирается (как это происходит? не понимаю т.к. тут нет цикла где значения перебираются) по одному символу затем вычитается '0' (для чего?) и приводится к byte, а затем этот байт добавляется в bytes. О лямбда выражениях только слышал и пока не работал с ними.
0
|
Администратор
|
||||||
06.10.2016, 09:10 | 6 | |||||
Ellissar, цикл "спрятан" в методе Select. Он перебирает по очереди символы строки и передает их через аргумент ch в лямбда-выражение которое получает из символа цифры значение цифры. То есть '0' превращается в 0, '1' в 1, '2' в 2, ... '9' в 9. Так происходит потому что коды символов цифр идут по порядку от ноля до девяти. Без метода Select и лямбд код будет выглядеть так:
0
|
1 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 46
|
|
06.10.2016, 09:22 [ТС] | 7 |
0
|
1 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 46
|
|
06.10.2016, 10:05 [ТС] | 9 |
Решил остановиться на вашем первом примере с лямда выражением. Всё работает как надо. Спасибо)
0
|
06.10.2016, 10:05 | |
06.10.2016, 10:05 | |
Помогаю со студенческими работами здесь
9
Преобразование int-->byte-->char || string String to byte[] Из string в byte[] Byte[] to string Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |