Название: Сохранение на диск некоротой структуры данных Отправлено: Anonymous от Апрель 13, 2004, 11:21 Доброе время суток.
Стоит задача сохранить некоротую структуру данных на диск, для того что-бы в дальнейшем ее считывать и снова использовать. Есть конечно вариант сохранить все это дело в текстовый файл а затем его парсить, но этот способ не особенно привлекает. Есть ли какие либо другие способы зделать это? Заранее спасибо. PS Сделать надо на C/C++ Название: Сохранение на диск некоротой структуры данных Отправлено: EugeneVC от Апрель 13, 2004, 11:22 Я бы посоветовал смотреть в сторону XML.
С помощью этой технологии можно хранить любые данные. Название: Сохранение на диск некоротой структуры данных Отправлено: cap от Апрель 13, 2004, 12:09 Структура данных в каком виде? struct?
Можно просто записать/прочитать в бинарный файл эту структуру. Название: Сохранение на диск некоротой структуры данных Отправлено: EugeneVC от Апрель 13, 2004, 12:41 это не есть хорошо
данные могут быть прочитаны на любом другом компе а там не факт что sizeof(struct) будет возвразщать одно и тоже значение. Надо будет писать функции упаковки и распаковки данных. Название: Сохранение на диск некоротой структуры данных Отправлено: cap от Апрель 13, 2004, 12:45 Теоретически проблема может возникнуть скорее не из-за размера, а из-за последовательности байтов.
Но и эта проблема может возникнуть лишь в случае перетаскивания файла с данными на какую-то совсем другую архитектуру. Все зависит от конкретной задачи. Скорее всего этот файл будет жить либо на одной машине, либо на одной архитектуре. В этом случае проблем не будет. Если файл будет переноситься между машинами с разными архитектурами, то нужно рассматривать эту ситуациию в зависимости от конкретики. Название: Сохранение на диск некоротой структуры данных Отправлено: ods от Апрель 13, 2004, 12:47 fwrite/fread вполне способны записать/считать структуру (непрерывный кусок памяти фиксированного размера) в файл. Но никакой проверки на правильность данных при этом не производится, так что лучше писать в файл определенного формата и явно парсить и проверять данные при чтении.
Название: Сохранение на диск некоротой структуры данных Отправлено: EugeneVC от Апрель 13, 2004, 12:53 Цитата: "cap" Теоретически проблема может возникнуть скорее не из-за размера, а из-за последовательности байтов. Но и эта проблема может возникнуть лишь в случае перетаскивания файла с данными на какую-то совсем другую архитектуру. Все зависит от конкретной задачи. Скорее всего этот файл будет жить либо на одной машине, либо на одной архитектуре. В этом случае проблем не будет. Если файл будет переноситься между машинами с разными архитектурами, то нужно рассматривать эту ситуациию в зависимости от конкретики. если писать только под винды можно об многом забыть мне приходится для операционнок писать linux и windows Название: Сохранение на диск некоротой структуры данных Отправлено: cap от Апрель 13, 2004, 12:59 так нужно путь решения сораизмерять с конкретной задачей ;)
в любом случае, сохранение бинарных данных, пусть не целой записью, а поэлементно (раз уж мы так бьемся за переносимость ;), будет работать быстрее и реализовать это будет проще, чем сохранение и чтение в XML :) Название: Сохранение на диск некоротой структуры данных Отправлено: EugeneVC от Апрель 13, 2004, 13:23 конечно легче
XML как альтернатива Название: Сохранение на диск некоротой структуры данных Отправлено: Anonymous от Апрель 29, 2004, 16:28 если структура содержит указатели - то бинарний дамп в файл ничего не даст
Название: Сохранение на диск некоротой структуры данных Отправлено: EugeneVC от Апрель 29, 2004, 22:22 да указатели надо отдельно обходить
|