Из того, что я прочитал, стандартный подход к сериализации строк широких символов заключается в том, чтобы сначала кодировать их в виде строк узких символов UTF-8.Однако это может потребовать больше ресурсов, чем вы хотите.
В каталоге примеров Boost.Serialization есть альтернативная реализация переносимого двоичного архива.Документация Boost.Serialization говорит о том, что ее основными недостатками являются отсутствие поддержки переносимых чисел с плавающей запятой и тщательное тестирование, поэтому, если вам не нужны переносимые поплавки, это может удовлетворить ваши потребности.
Не знаю, смотрели ли вы на другие библиотеки сериализации или нет, но есть несколько альтернатив, включая libs11n и Буферы протокола .(Лично я использовал Boost.Serialization и Protocol Buffers, но я предпочитаю Protocol Buffers.)