|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
Доброго времени суток! Собственно сабж в сабже =) Имею некоторый массив байтов типа object. В этом массиве "зашифрованы" некоторое кол-во нужных мне данных (кол-во переменных и их порядок известны) разных типов (string, float, int и тд). Задача - разобрать этот массив и вычленить необходимую информацию. Что делаль: 1) Пробую просто: Код: c# 1.
Логично не работает, просит byte[]. 2) Пробую быстро: Код: c# 1. 2. 3. 4. 5. 6. 7. 8.
Что-то получаю, но получаю ахинею. В bytesArr лежит вообще что-то "левое", а не исходный массив. Еще и сам массив из исходных 578 элементов вырос до 606. 3) Пробую BinaryReader: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9.
Получаю exeption: Unable to read beyond the end of the stream. 4) пробую с BinaryReader.PeekChar: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
В тело цикла не попадаю, видать reader.PeekChar() не находит следующий символ, а в самом reader _buffer лежит та же ерунда, что и в попытке №2, но всего 256 элементов. Короче, запутался и замучился. Ребят, как этот массив разобрать? Зы: По форуму смотрел, темы есть, не помогло. Гугль читал, инфы много, не получилось. MS FM курил, но видать слабО... ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2019, 10:53 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
Мысль про банальный тайпкастинг к byte[] в голову не приходила? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2019, 11:25 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
mozgen, Код: c# 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2019, 11:25 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
Сон Веры Павловны, Приходила. Варианты реализации подскажешь?) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2019, 14:34 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
Petro123, Эмм... не понял, а зачем? можно как-нибудь подробнее.. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2019, 14:35 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
mozgenСон Веры Павловны, Приходила. Варианты реализации подскажешь?) Код: c# 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2019, 14:52 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
mozgenPetro123, Эмм... не понял, а зачем? можно как-нибудь подробнее..что зачем? По ООП я твои зашифрованные данные записал в класс myObj. Пропиши там твои поля и пробуй. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2019, 15:06 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
Cat2, ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2019, 15:06 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
mozgenзашифрованы" некоторое кол-во нужных мне данных (кол-во переменных и их порядок известны) разных типов (string, float, int и тд)покажи класс с этими переменными ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2019, 15:08 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
Petro123mozgenзашифрованы" некоторое кол-во нужных мне данных (кол-во переменных и их порядок известны) разных типов (string, float, int и тд)покажи класс с этими переменными Ты думаешь там есть класс? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2019, 17:55 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
Cat2, )) я просто напомнил, что "руки мыть хорошо перед едой". Ну и загрузил ТС работой. Пусть работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2019, 18:56 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
Petro123покажи класс с этими переменными Cat2Ты думаешь там есть класс? Совершенно верно, нет у меня никакого класса. По сути, я и что хранится в этом массиве знаю условно приблизительно. Petro123Ну и загрузил ТС работой. Пусть работает. Вот уж спасибо! =) В любом случае, я просил подсказать в какую сторону копать. Будем пробовать. =) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2019, 06:07 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
mozgen, Уверен в том, что тебе нужна десериализвция? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2019, 08:08 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
mozgenПо сути, я и что хранится в этом массиве знаю условно приблизительно.не выйдет. Надо точно знать что там. Иначе заголовок нужен. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2019, 08:14 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
mozgenПо сути, я и что хранится в этом массиве знаю условно приблизительно. А что это такое, откуда берётся? Чем данные "зашифрованы"? Может Protocol Buffers какой? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2019, 08:43 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
Изопропил, нееет, не уверен =) Petro123не выйдет. Надо точно знать что там. Иначе заголовок нужен. Понятно. Скажем так, у меня есть некоторый "конфигурационный" файл, в котором описана структура. Например: Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
По идее, в получаемом мной объекте, элементы массива должны располагаться именно в том порядке, в каком указаны в конфиге. Ну допустим, разобрать этот конфиг и создать необходимый класс со всеми подкласами я могу. В результате получим что-то типа такого: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27.
Ок, а дальше что? Код: c# 1. 2. 3. 4. 5.
Или как? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2019, 08:52 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
Дмитрий Мух, Читаю с PLC. Зашифрованы вообще не правильное слово, разве что "удобное". Я так понимаю, что это эдакая "унификация". Вместо того, чтоб постоянно слать/читать овермного переменных разных типов, их проще все собрать в unsignedByte массив и скопом отправить клиенту. А клиенту зная структуру можно их разобрать в удобоваримый вид. вот задачу клиента и пытаюсь реализовать. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2019, 08:57 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
mozgen, Вы изобрели сериализацию? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2019, 09:06 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
mozgenесть некоторый "конфигурационный" файл, в котором описана структура.его руками пишут? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2019, 09:07 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
mozgenЯ так понимаю, что это эдакая "унификация". Вместо того, чтоб постоянно слать/читать овермного переменных разных типов, их проще все собрать в unsignedByte массив и скопом отправить клиенту. А клиенту зная структуру можно их разобрать в удобоваримый вид. вот задачу клиента и пытаюсь реализовать.бред какой то. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2019, 09:08 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
Petro123, Petro123 Вы изобрели сериализацию? Не понял. Petro123 его руками пишут? Угу. Пишут. Один раз. когда-то давно. Petro123 бред какой то. Что есть, то и едим. =) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2019, 09:15 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
mozgen, Конфигурации файл это хорошо, Данные как записывают? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2019, 09:25 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
Изопропил, Куда записывают? в массив? - понятия не имею. По сути, у меня в ту логику и доступа-то нет... ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2019, 09:31 |
|
Разбираем массив байтов типа Object
|
|||
---|---|---|---|
#18+
mozgenPetro123Вы изобрели сериализацию? Не понял.прочтите в википедии. Это передача классов по проводам не в виде электронов, а в виде байт. У вас же то же самое? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2019, 09:35 |
|
|
start [/forum/moderation_log.php?user_name=aes2000]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
375ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
others: | 22ms |
total: | 527ms |
0 / 0 |