Форум сайта python.su
Добрый день.
Не знаю, может не совсем туда пишу, но вдруг.
Есть сервер на python, который отправляет сериализованный список(list). Надо десериализовать его на c#. Я сделал по документации, но при бинарной десериализации появляется ошибка has invalid char. Вопрос-это вообще возможно сделать?
Спасибо.
Отредактировано realivan (Сен. 14, 2016 20:52:30)
Офлайн
realivanpickle - внутренний формат питона. Сначала сериализуй данные в другом формате (xml, json).
Надо десереализовать его на c#.
Офлайн
xml,jsonЯ так понимаю, что использование pickle даже внутри питон проектов-это не есть хорошая практика, тк мне теперь надо переделывать не только сервер, но два других приложения.
Офлайн
realivanНаружу просто передавать не надо, если там может быть не питон. А так, в питоне лучше pickle формата не найдёшь, так как он быстрый и сериализует всё.
Я так понимаю, что использование pickle даже внутри питон проектов-это не есть хорошая практика
Отредактировано py.user.next (Сен. 14, 2016 11:44:23)
Офлайн
realivan
Надо десереализовать его на c#
py.user.nextинтересно как. Я так понимаю это IronPython?
Я сделал по документации
Офлайн
интересно как. Я так понимаю это IronPython?Нет, строковое представление объектов - это поток байтов. В с# есть класс BinaryFormatter который сериализует и десериализует объект в двоичном формате. Вот я и предположил, что он может помочь.
Офлайн
realivanЗря предположили. BinaryFormatter если не вдаваться в подробности может работать только с C# объектами. В других языках (Python C++ Java Pascal…) он абсолютно бесполезен.
Вот я и предположил, что он может помочь.
Офлайн