Есть ли способ сохранить и загрузить сложную структуру данных в двоичный файл на С#?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Есть ли способ сохранить и загрузить сложную структуру данных в двоичный файл на С#?

Сообщение Anonymous »

Проблема
Я пишу программу на C#, которая используется для сохранения и загрузки списка объектов в определенной структуре, например:

ПОДПИСЬ\r\n РАЗМЕР\r\n OBJECT_DATA\r\n \r\n РАЗМЕР\r\n OBJECT_DATA\r\n \r\n Подпись — это примитивная строка, содержащая закрытый ключ для отделения моего файла данных от других файлов.

SIZE — это целочисленное значение, обозначающее количество байтов, которые OBJECT_DATA использует.

OBJECT_DATA — это класс, содержащий мои данные.
Что я пробовал
Я нашел много решений в Stackoverflow, и почти все они используют BinaryFormatter, который небезопасен и не должен использоваться.

Я также взглянул на protobuf-net, но все еще не мог применить его для решения своей проблемы.
Моя идея
Я думаю, что этапы сериализации и десериализации решения будут выглядеть так:

Сериализация (предположим, что файл ввода/вывода является двоичным файлом):

1. Откройте выходной файл и напишите подпись. 2. Прокрутите список исходных объектов. - Для каждого элемента рассчитайте размер элемента и запишите его в выходной файл. - Запись данных объекта в двоичный файл. (Я все еще путаю на этом этапе) - Напишите «\r\n», чтобы отметить, что это конец элемента. Десериализовать
1. Откройте входной файл и прочитайте подпись 2. Если Подпись соответствует моему секретному ключу: - Цикл до конца файла - Прочтите значение РАЗМЕРА. - Прочитайте объект и создайте экземпляр его класса.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как вернуть сложную структуру из UDF Pandas в PySpark?
    Anonymous » » в форуме Python
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Как вернуть сложную структуру из UDF Pandas в PySpark?
    Anonymous » » в форуме Python
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Как вернуть сложную структуру из UDF Pandas в PySpark?
    Anonymous » » в форуме Python
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Есть ли умный способ преобразовать сложную строку в несколько списков в Python 3?
    Anonymous » » в форуме Python
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Есть ли умный способ преобразовать сложную строку в несколько списков в Python 3 [закрыто]
    Anonymous » » в форуме Python
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»