Передача строк [] как байта [] - PullRequest
2 голосов
/ 04 ноября 2010

Я работаю в сети, в которой мой скрипт на Python будет связываться с моим Java-приложением. Скрипт python передает DataPacket (просто пакет, содержащий некоторые строки и немного других данных) на сервер Java для обработки. Я знаю, как упаковать информацию в байтовый массив, но как мне распаковать ее для использования в качестве строк? Что я получил, так это то, что мне нужно проанализировать массивы данных в пакете и отправить их по частям. Это единственный способ сделать это? Могу ли я использовать ByteInputStream и если да, то как?

спасибо ~ Аэдона

1 Ответ

1 голос
/ 04 ноября 2010

Я не уверен, что то, что вы делаете, совершенно правильно, поскольку вы разбиваете свои строки на отдельные пакеты.Это может вызвать проблемы с многобайтовыми строками.

Однако вы можете проверить ByteArrayOutputStream .Вы можете записать это, а затем преобразовать в строку, используя toString(enc), где enc - это кодировка, которую вы использовали в своем Python для преобразования ваших строк в байты.

Просмотр вашихКомментарий ниже, кажется, вам нужны средства для сериализации в Python и десериализации в Java.Оставляя в стороне такие решения, как сериализация XML, вы рассматривали возможные решения, такие как Буферы протокола Google ?

...