Вниз
Скачать: CL | DM;

Проблема с TFileStream   Найти похожие ветки 

← →
Ivan Kohut   (2002-04-14 21:12) [0]

Уважаемые Мастера!
У меня возникла проблема с TFileStream
Вот фрагмент кода

var f1,f2:TFileStream;
s:string;
rez:string;
begin
f1:=TFileStream.Create("temp.txt",fmCreate);
setLength(s,10);
s:="1111155645";
f1.WriteBuffer(s,10);
f1.Free;

f2:=TFileStream.Create("temp.txt",fmOpenRead);
SetLength(rez,5);
f2.ReadBuffer(rez,5);
f2.Free;

И после етого rez="1111155645". А должно же быть "11111" ?
Помогите, если знаете где ошибка. Буду очень благодарен.


← →
Anatoly Podgoretsky ©   (2002-04-14 21:26) [1]

Как решил, что это так?


← →
Ivan Kohut   (2002-04-14 21:36) [2]

Через AddWatch...


← →
Anatoly Podgoretsky ©   (2002-04-14 21:41) [3]

А через Length не пробовал?


← →
Ivan Kohut   (2002-04-14 21:58) [4]

Да пробовал, пробовал...
Length(rez)=10 !!!!!!!!!!!!!!!!!!!!!!

И, еще а в файле то появляется после всего етого
E0F14400FCF61200AAFA (смотрел через Hex32)


← →
Anatoly Podgoretsky ©   (2002-04-14 22:11) [5]

Да еще не мешало бы передать адресе буффера, а не адрес переменной с адресом буфера, x[1]


← →
MBo ©   (2002-04-15 07:06) [6]

ты пишешь и читаешь не содержимое строки, а ее адрес, указатель, и при чтении получается rez- КОПИЯ s.
Решение - при чтении и записи делать, как Anatoly Podgoretsky сказал- s[1] и rez[1]


← →
Ivan Kohut   (2002-04-15 10:23) [7]

Большое спасибо за помощь! Все заработало!



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.01 c
1-80845
konusov
2002-04-13 00:37
2002.04.25
Как изменить дату создания файла?


1-80912
@andrew
2002-04-15 12:49
2002.04.25
ПРИВЕТ ВСЕМ! Хочу распечатать Канвас...


1-80978
ded_di
2002-04-12 12:11
2002.04.25
разбор строки


14-81041
vlv
2002-03-19 18:50
2002.04.25
База данных - слова


6-81010
Hyper-X
2002-01-18 21:22
2002.04.25
помогите!!!!




   Наверх