Пятница, 29 Марта 2024, 04:10

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Десериализация данных из BitStream
Десериализация данных из BitStream
serega721Дата: Пятница, 20 Июня 2014, 16:41 | Сообщение # 1
был не раз
Сейчас нет на сайте
Добрый день!
Дело заключается вот в чем:
Сериализаю данные
Код
BitStream bitStream = new BitStream(isTypeSafe);
         bitStream.WriteByte(species);
         bitStream.WriteInt32(revision);
PlayerPrefs.SetString(species.ToString(), bitStream.ToString());

После этого отправляю в PlayerPrefs в виде строки в которой содержится пачка байтов . Дальше я пытаюсь сделать десериализацию данных вот таким способом:
Код
BitStream bitStream = new BitStream(isTypeSafe);
bitStream.WriteString(PlayerPrefs.GetString(species.ToString()));
species = bitStream.ReadByte();
revision = bitStream.ReadInt32();

Но увы на выходе я получаю не корректные данные. В чем может быть проблема? Или что я делаю не правильно?
HPlusDieseДата: Пятница, 20 Июня 2014, 18:17 | Сообщение # 2
участник
Сейчас нет на сайте
Цитата
BitStream bitStream = new BitStream(isTypeSafe);
bitStream.WriteString(PlayerPrefs.GetString(species.ToString())); - вот это строка меня смущает. Зачем писать в поток, если нужно прочитать?
species = bitStream.ReadByte();
revision = bitStream.ReadInt32();


Сообщение отредактировал HPlusDiese - Пятница, 20 Июня 2014, 18:23
serega721Дата: Пятница, 20 Июня 2014, 18:30 | Сообщение # 3
был не раз
Сейчас нет на сайте
Цитата HPlusDiese ()
вот это строка меня смущает. Зачем писать в поток, если нужно прочитать?

Для этого мы ее и записываем чтобы потом прочитать, в данный момент в строке хранятся пачки байтов, их нужно корректно распарсить.


Сообщение отредактировал serega721 - Пятница, 20 Июня 2014, 18:34
HPlusDieseДата: Пятница, 20 Июня 2014, 19:33 | Сообщение # 4
участник
Сейчас нет на сайте
Зачем парсить?
Записываешь байт, потом Int. И читаешь в том же порядке. Нафига строку то писать?
seamanДата: Суббота, 21 Июня 2014, 01:57 | Сообщение # 5
старожил
Сейчас нет на сайте
Есть у меня сомнение, что строки она записывает в каком то определенном коде (UTF8, Windows1251...) У Вас же набор байт, не соответствующий никакому коду. Как их интерпретировать - непонятно. Потому и возникают глюки.
Советую для этого использовать JSON
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Десериализация данных из BitStream
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг