Как сохранить сериализуемый объект с помощью File.WriteAllBytes ?, C # - PullRequest
0 голосов
/ 31 января 2012

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

Спасибо за помощь!

Ответы [ 2 ]

2 голосов
/ 31 января 2012

Используйте BinaryFormatter:

var formatter = new BinaryFormatter();

// Serialize
using (var stream = File.OpenWrite(path))
{
    formatter.Serialize(stream, yourObject);
}

...

// Deserialize
using (var stream = File.OpenRead(path))
{
    YourType yourObject = (YourType)formatter.Deserialize(stream);
}
1 голос
/ 31 января 2012

Да, это называется двоичной сериализацией. На сайте MSDN есть несколько хороших примеров:

http://msdn.microsoft.com/en-us/library/4abbf6k0(v=vs.100).aspx

...