Есть вот такая структурка
struct BaseStr
{
AnsiString Stroka1;
AnsiString Stroka2;
AnsiString Stroka3;
AnsiString Stroka4;
.............................
AnsiString StrokaN;
}
обьявлена она как
BaseStr Base[10];
Как записать в файл а потом загрузить эту структуру?
Я пробовал вот так:
Save:
FILE *out;
long Dimsize=sizeof(BaseStr)*10;
но ничего не получилось, записывается и читается какойто мусор, хотя в случае когда вместо AnsiString-ов в структуре int, float.... все работает
Плиз помогите начинающему програмеру.
[C++] Как записать/загрузить данные из структуры в файл?11.12.01 18:05 Автор: ih8u <i hate you> Статус: Member
Нет строк в C ! Нет и все ! Забудь об этой дурацкой бейсикопаскалевской приблуде ! В С есть УКАЗАТЕЛИ ! И занимают они ЧЕТЫРЕ байта !
Вот эти четыре байта ты и записваешь !
Каждую структуру где есть указатели надо сначало СЕРИАЛИЗОВАТЬ, а потом сбрасывать на диск (сеть и т.д.)
Дальше сам...
> Есть вот такая структурка > struct BaseStr > { > AnsiString Stroka1; > AnsiString Stroka2; > AnsiString Stroka3; > AnsiString Stroka4; > ............................. > AnsiString StrokaN; > } > обьявлена она как > BaseStr Base[10]; > Как записать в файл а потом загрузить эту структуру? > > Я пробовал вот так: > Save: > FILE *out; > long Dimsize=sizeof(BaseStr)*10; > > out=fopen(NameFile, "wb"); > fwrite(Base, Dimsize, 1, out); > fclose (out); > > Load: > FILE *in; > > in=fopen(NameFile, "rb"); > fread(Base, (sizeof(BaseStr)*10), 1, in); > fclose (in); > > но ничего не получилось, записывается и читается какойто > мусор, хотя в случае когда вместо AnsiString-ов в > структуре int, float.... все работает > Плиз помогите начинающему програмеру.