| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > C# преобразование пакета |
| Автор: hitman2010 8.4.2011, 19:26 | ||
Есть TCP пакет типа такого
как из этого пакета получить строку "E..(.ú@..".À¨.e>»..j.Pt.u·>ä2£P..üy..." ? |
| Автор: Экскалупатор 9.4.2011, 01:06 |
| http://ascii.org.ru/ конвертируй в int, а потом в каждый int в char |
| Автор: dextermd 9.4.2011, 01:08 | ||
На входе имеем массив чисел в шестнадцатеричном формате (hex), на выходе нужно получить строку символов ascii. Для выполнения задачи нужно проделать два шага: преобразовать числа входного массива из hex в byte, а затем из byte получить символы ascii.
|
| Автор: Экскалупатор 9.4.2011, 01:22 | ||
что то вроде:
Добавлено @ 01:25 не обновил страницу перед ответом |
| Автор: hitman2010 9.4.2011, 08:29 | ||||
Вы меня немного не так поняли, я же не знаю какой именно прийдёт пакет.
в текстбоксе получаю
|
| Автор: hitman2010 9.4.2011, 11:41 | ||
или ты хочешь сказать что тебе приходит в пакете именно вот такая строка???
Именно это я и хотел сказать. |
| Автор: Экскалупатор 9.4.2011, 12:31 |
| а что это за тип данных Packet? может у него есть метод или свойство которое возвращает то что тебе нужно? ну или хотя бы ASCII коды? довольно странно что он сразу возвращает в таком странно виде потому что в противном случае тебе придется разбирать эту строку руками. |
| Автор: hitman2010 9.4.2011, 14:21 |
| Вобщем нарыл я в нете снифер(сорцы прикрепил), мне нужно чтоб на первой форме "PacketMonitorForm" в текстбоксе отображалось содержимое последнего входящего\исходящего пакета. Кто шарит помогите плиз. |
| Автор: Экскалупатор 9.4.2011, 15:05 | ||
| hitman2010, вот меня всегда удивляло это, почему не посмотреть что написано в классе Pack и как он работает, и там же изменить все как тебе нужно. в этом классе есть метод
который возвращает строку в том виде в котором ты ее получаешь, измени так как тебе нужно или напиши свой и будет все круто. |
| Автор: hitman2010 9.4.2011, 15:58 | ||
Спасибо за наводку, проблема решена. |
| Автор: Экскалупатор 9.4.2011, 16:30 |
| hitman2010, как бы общее замечание, на мой взгляд подобной логике не место в этом классе, т.е. класс пакета не должен выводить строку в подобном виде, иначе будут получаться такие проблемы(с чем ты и столкнулся), сделай для него класс, который будет работать с пакетом и преобразовывать тебе массив байт в то что тебе нужно. |