Обновление: ОП хотел бы, чтобы читаемый человеком результат. Я бы предложил JavaScriptSerializer, затем, в:
C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ System.Web.Extensions.dll
// Serialize:
using (var fs = new FileStream(fileName, FileMode.Create))
using (var writer = new StreamWriter(fs))
{
JavaScriptSerializer serializer = new JavaScriptSerializer();
string s = serializer.Serialize(m_SomeData);
writer.Write(s);
}
// Deserialize:
using (var fs = new FileStream(fileName, FileMode.Open))
using (var reader = new StreamReader(fs))
{
JavaScriptSerializer serializer = new JavaScriptSerializer();
var s = reader.ReadToEnd();
m_SomeData = serializer.Deserialize<T[]>(s);
}
Старый ответ:
Это работа для BinaryFormatter :
using (FileStream fs = new FileStream(fileName, FileMode.Open))
{
BinaryFormatter formatter = new BinaryFormatter();
m_SomeData = (T[])formatter.Deserialize(fs);
}
Это, конечно, предполагает, что вы также используете его для сериализации через formatter.Serialize(fs, m_SomeData);
.