struct super_puper
{
int a;
int b;
float x;
};
...
super_puper out, in;
WriteFile(hFile, &out, sizeof(out), &someVariable, 0);
...
ReadFile(hFile, &in, sizeof(in), &someVariable, 0);
...
файл записей
Здравствуйте. Не поможет ли кто толковым объяснением? Как в С++ организовать ввод-вывод не побайтно, а структуры? Скажем для создания файла БД.
а файл - это как ни крути, байты и ввод-вывод будет побайтный, только ты же можешь легко сделать следующее
Код:
самое простое - написать свои функции чтения/записи структур и потом юзать уже их...
у тебя будет ряд нюансов при наличии указателей в структуре, также не забывай о выранивании...
Может тогда проще в текстовый файл все писать как в CSV, с разделителем запятой? Так даже эксель читать будет. Как думаешь такое используют для создания базы данных?
2VJA добавлю только что если не для Win то есть еще fread / fwrite
2alisher1: для доморощенных бд - конечно юзают, насчет профессиональных, сомневаюсь, имхо тебе хватит и текстового файлика
Если не хочешь изобретать велосипед (я советую этого не делать) смотри в сторону CArchive (MFC) или boost::serialization.
Цитата: ncode
Если не хочешь изобретать велосипед (
А еще подумай - может быть, проще будет использовать настоящую БД? Чем писать свой формат и работать с ним?
Спасибо. По поыоду использования настояще БД, имеется ввиду что-то типа MySQL? Я правильно понял?
Цитата: alisher1
По поыоду использования настояще БД, имеется ввиду что-то типа MySQL?
Ну если MySQL можно назвать настоящей СУБД. Слишком городое для нее название ))
Цитата: aks
Ну если MySQL можно назвать настоящей СУБД. Слишком городое для нее название ))
Ну а PostgreSQL? Пойдет как настоящая СУБД?)
имхо, да =)
Нашел решение - SQLite. Всем спасибо!
Цитата: vja
определись, в каком формате будешь хранить данные - либо придумай свой, либо изучи существующие :)
а файл - это как ни крути, байты и ввод-вывод будет побайтный, только ты же можешь легко сделать следующее
а файл - это как ни крути, байты и ввод-вывод будет побайтный, только ты же можешь легко сделать следующее
Код:
...
WriteFile(hFile, &out, sizeof(out), &someVariable, 0);
...
WriteFile(hFile, &out, sizeof(out), &someVariable, 0);
...
Что такое [COLOR="DimGray"]someVariable[/COLOR] ?
какая-то переменная... dword