создаешь какунить структуру (класс, что хочешь), запи[sensored]шь туда все данные, а потом можешь сделать следующее:
Dim
stream As System.IO.Stream = System.IO.File.Open("save.dat", System.IO.FileMode.Create)Dim formatter As System.Runtime.Serialization.Formatters.Binary.BinaryFormatter = New System.Runtime.Serialization.Formatters.Binary.BinaryFormatter()
formatter.Serialize(stream,
MyData)
'MyData - твоя перемення (ссылка на класс, структуру ...)
а вот так можна считать данные
Dim b = formatter.Deserialize(stream) 'stream - естественно нужно ешо открыть
stream.Close()
b - будет переменной MyData
-----------------
если не подходит такой способ , то можна помучаться самому сохраняя все данные в формате XML, благо в .нет по этому поводу классов хватает (лично я таким способом и пользуюсь)
function LoadFile($fname) { $f=@fopen(GBook, "rb"); if(!$f) return array(); $Book=Unserialize(fread($f, 100000)); fclose($f); return $Book; } function SaveBook ($fname, $Book) { $f=fopen(GBook, "wb"); fwrite($f, Serialize($Book)); fclose($f); Это на PHP - куда удобней! Скомпилируй похожие функции на С++ в библиотеку, и вызывай оттуда.
Я бы использовал запись в ини-файл. Получится достаточно читабельно, как в самом файле, так и в коде программы. Можно считывать не все данные сразу и потом их в коде разгр[sensored]ь, а выборочно, по мере надобности. В инете масса приблуд для работы с ини. Я использую модуль с АПИ. А если ты хочешь скрыть какие-либо параметры, можно либо их зашифровать, либо в реестр.
Можно конечно в ини файл сохранять, но я обычно делал дубово - просто запихивал все переменные в массив, затем скидывал этот массив через Put. Чтение, соответственно, через Get.
To Артём: да вроде сказали, что надо не в .NET ) Хотя сериализация
- мощная вещь! Особнно при небольших объёмах данных (если не
приходится слишком забивать ОЗУ).