|
Передать двоичные данные через сокет
|
|||
---|---|---|---|
#18+
Есть устройство, общение с которым происходит через TCP. Мне удалось подключиться к нему через Socket. Далее нужно передать ему цепочку байтов. Например, такую: F0 00 12 F5 01 Не пойму, как сделать. То, что я нашел в примерах, выглядит так: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9.
Подозреваю, что в ф-ю sendData() нельзя просто передать строку "F00012F501". Скажите, как правильно передавать такие данные? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2022, 20:05 |
|
Передать двоичные данные через сокет
|
|||
---|---|---|---|
#18+
data это массив байт. Его просто нужно заполнить нужными байтами. Например, если нужно именно чтоб шестнадцатерично выглядело: byte data[] = {0x63, 0x7C, 0x77, 0x7B} ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2022, 16:44 |
|
Передать двоичные данные через сокет
|
|||
---|---|---|---|
#18+
wadman, спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2022, 17:19 |
|
Передать двоичные данные через сокет
|
|||
---|---|---|---|
#18+
Еще вопрос. При инициализации массива возникает ошибка, если элемент массива больше какого-то значения. При А вот так пропускает: Код: java 1.
Это правильно? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2022, 18:39 |
|
Передать двоичные данные через сокет
|
|||
---|---|---|---|
#18+
Я не учел, что byte не может хранить число более 127, т.к. он не unsigned. Как тогда передавать в качестве байтов число 0xC3 ? Если приводить через (byte) 0xC3, то число получается отрицательным. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2022, 12:43 |
|
|
start [/forum/topic.php?fid=13&msg=40126271&tid=1330661]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
87ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 190ms |
0 / 0 |