Сохранение AnsiString в файл
Если писать
blockwrite(F,Str,length(str))
то он сохраняет в файл не строку, а область памяти, начиная с адреса строки (т.е. то, что хранит Str) и далее весь блок длинной length(str).
Я использую AnsiString, т.к. длинны ShortString мне не хватает.
Че делать???
Цитата:
Originally posted by free_lexx
то он сохраняет в файл не строку, а область памяти, начиная с адреса строки (т.е. то, что хранит Str) и далее весь блок длинной length(str).
то он сохраняет в файл не строку, а область памяти, начиная с адреса строки (т.е. то, что хранит Str) и далее весь блок длинной length(str).
Так и надо сохранять область памяти, т. е. буфер, в котором реально хранится строка.
BlockWrite(F, Str[1], Length(Str));