| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > string2byte |
| Автор: nerezus 11.9.2005, 18:31 |
| Собственно как, предположим, из строки сделать массив типа byte ..чувствую, что трабла с кодировками будет... предположим, строка cp1251 |
| Автор: Дрон 11.9.2005, 19:16 | ||
Сам не проверял, но по идее что-то вроде того:
и не забыть using System.Text |
| Автор: nerezus 11.9.2005, 20:14 |
| спасибо =) а обратно ? |
| Автор: Akina 11.9.2005, 20:46 | ||
Какая нафиг кодировка в массиве байтов? Ты опиши всю задачу - чую я, речь о чем-то тривиальном... |
| Автор: Дрон 11.9.2005, 23:34 | ||||||
nerezus всё очень правильно сказал. Как раз только благодаря тому, что он это сказал я и вспомнил про это решение .NET хранит строки в 16-битном Unicode (правда я не знаю big или little endian). Можно, конечно, попробовать выковырять эти байты напрямую. Типа того:
Но это очень и очень плохо. Вдруг потом MS переделает формат строки. Поэтому есть "правильный" способ преобразования. Причём MS учли то, что человеку может понадобится строка в разных кодировках, а не только в Unicode. В итоге одна и та же строка "абракадабра" может отображаться в совершенно разные массивы байтов. Вот.
А вот тут ты меня разочаровал Неужели самому догадаться сложно??? Я, например, ещё 15 секунд назад не знал решения, но просто проглядев список методов класса Encoding, который выводит Visual Studio увидел, что там есть метод GetString. Посмотрев на его параметры я увидел, что он принимает как раз массив байтов, а возвращает строку. В итоге, я пишу этот текст уже раз в 5 дольше, чем занял поиск решения |
| Автор: nerezus 12.9.2005, 11:08 | ||||||
с NetworkStream пробую работать, там массивы байтов. Добавлено @ 11:16 З.Ы. протокол не HTTP, WebRequest Class не предлагать |
| Автор: nerezus 12.9.2005, 11:25 |
| спасибо, получилось. |