У меня есть объект Java, который я хочу, чтобы отправить от клиента Java (написанный на Java), используя сериализацию или любые другие методы и хотите десериализовать один и тот же объект на сервере (написанный на C)?
Вы не можете.
C даже не знает об объектах и при мысли о C++ как о другом языке OO: у этого есть совершенно другое понятие объектов.
Итак, вы не можете «воссоздать» объект Java за пределами JVM.
Но вы, скорее всего, хотите передать данные ваш объект Java держит C-программу.
Для этого вы должны указать protocoll, что и программа Java, и C-программа понимают. @ Halmackenreuter была предложена одна из возможностей. Другие - XML или CSV. Консенсус всех трех заключается в том, что: конвертируйте данные в текстовый файл и передайте их другому концу, который знает, как его читать (разбирать). Этот процесс называется marshalling/unmarshalling.
есть требование, в котором я не должен использовать JSON. И ищем двоичное представление данных. Объект должен быть преобразован в бинарный формат, а затем отправить по сети и получить то же самое в сервере (написанном на C - Аджай Ядав
Затем вы должны указать (или знают) этот двоичный формат и создать . поток байтов, пересылаются по сети
кто-то предложил использовать ByteBuffer него к тому же Но все же изо всех сил о том, как использовать то же самое -.. Аджай Ядав
Это все равно означает, что вы не можете отправить «объект java». Вы должны поместить данные объектов в ByteBuffer в том порядке, в котором их ожидает protocoll.
Будет ли использование json вариантом? –
@Paul .. Привет, знаю Json и уже реализован, но есть требование, в котором мне не нужно использовать Json. И ищем двоичное представление данных. Объект необходимо преобразовать в двоичный формат, а затем отправить по сети и получить его на сервере (см. C). –
А какой будет бинарный формат? Вы можете столкнуться с проблемой «endian» (байты int находятся в другом порядке на разных платформах). –