Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.20;
Скачать: CL | DM;

Вниз

Вопрос по записи в TMemoryStream   Найти похожие ветки 

 
necky   (2005-02-03 22:58) [0]

Добрый день. Подскажите новичку
Есть запись
TRec=record
s:WideString;
end;
Я пишу записи в поток затем в файл. Вот пример кода
var
rec:TRec;
begin
ms:=TMemoryStream.Create;
..заполняю rec..
ms.Write(rec,sizeof(rec));
ms.SaveToFile("c:\1.1");
ms.Free;
...
ms:=TMemoryStream.Create;
ms.LoadFromFile("c:\1.1");
ms.Seek(0,soFromBeginning );
ms.read(rec,sizeof(rec));
rec.s ?
Так вот работает если в TRec s фиксированной длины - s:string[], а если просто string то почему-то не работает - возвращает ерунду.
Заранее спасибо,Евгений


 
Anatoly Podgoretsky ©   (2005-02-03 23:10) [1]

WideString это указатель, зачем его писать в файл?


 
necky   (2005-02-03 23:30) [2]

тоже самое со string. Пишу s:string[100] - все нормально, меняю на s:string - после считывания из потока всякая ерунда - не могу понять в чем дело


 
Anatoly Podgoretsky ©   (2005-02-03 23:45) [3]

string тоже указатель, точно также нет смысла.


 
necky   (2005-02-04 11:34) [4]

А возможно ли тогда как-то реализовать данную задачу - писать string в составе record в файл?


 
Александр Иванов ©   (2005-02-04 11:35) [5]

necky   (04.02.05 11:34) [4]
Только фиксированный длины.


 
Чапаев ©   (2005-02-04 12:43) [6]

Записывать длину строки, затем содержимое строки.



Страницы: 1 вся ветка

Текущий архив: 2005.02.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.047 c
14-1107178240
ArchValentin
2005-01-31 16:30
2005.02.20
Кто чё-нить знает про зверя VBScript просю...


1-1107091565
GrayZeeCat
2005-01-30 16:26
2005.02.20
Как научить консоль говорить по русски в XP?


4-1105175931
Федюлин Григорий
2005-01-08 12:18
2005.02.20
Сообщения о memory


4-1104852362
Эдик
2005-01-04 18:26
2005.02.20
Как получить список модомов Win 95/98/2000/XP


1-1107467537
griban
2005-02-04 00:52
2005.02.20
Zapusk makrosa Excel iz Delphi