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

Как дописать в начало типизированного файла?   Найти похожие ветки 

← →
Zheks ©   (2003-11-10 12:55) [0]

делаю так:

AssignFile(fpc, NameF);
Reset(fpc);
seek(fpc, 0);
read(fpc, dataflash);
.....................
seek(fpc, 0);
Write(fpc, dataflash); // вылетает ошибка: File Access Denied;
CloseFile(fpc);

Как быть?


← →
Vlad Oshin ©   (2003-11-10 13:03) [1]

?
закрой после чтения, открой перед записью...


← →
Zheks ©   (2003-11-10 13:13) [2]

пробовал, не фурычит.


← →
PVOzerski ©   (2003-11-10 13:20) [3]

Должно бы работать... Не переопределено ли значение FileMode: надо бы = 2? Или же файл этот уже открыт какой-то другой программой с правом записи.


← →
Vlad Oshin ©   (2003-11-10 13:23) [4]

{$I-}, IOResult чему равно?


← →
Anatoly Podgoretsky ©   (2003-11-10 13:25) [5]

Равно сильно вопросу как дописать в начало массива, ответ всегда один и тот же - никак, надо создавать новый


← →
PVOzerski ©   (2003-11-10 13:32) [6]

К слову, что понимать под "не фурычит"? Мой-то ответ правильный, только вот при "фурычании" вновь записываемое перекрывает прежнее значение по данному смещению - не "insert", а "owerwrite". И иначе быть не может, в силу способа хранения данных на носителях. Так что если нужно "сдвинуть" данные "вниз", то если файл небольшой, придется его весь считывать и все записи заносить в него заново, а если большой, то думать о удобном формате хранения данных, позволяющем читать в нужном порядке записи, физически не обязательно следующие друг за другом.


← →
Zheks ©   (2003-11-10 13:33) [7]

Это я перевожу код с Паскаля на Делфи, там всё дописывает...


← →
Vlad Oshin ©   (2003-11-10 13:36) [8]


> Это я перевожу код с Паскаля на Делфи, там всё дописывает...

знаю, сам так в дипломной делал, когда матрицы большие считал, даже на делфях "фурычило".


> {$I-}, IOResult чему равно?


← →
Zheks ©   (2003-11-10 13:58) [9]

2 Vlad Oshin: А как это узнать?


← →
mOOx_ ©   (2003-11-10 14:02) [10]

ф1 :)


← →
Zheks ©   (2003-11-10 14:10) [11]

вставил {$I-} в начале и {$I+} в конце и вроде заработало...
{$I-},{$I+} - что это значит?


← →
Anatoly Podgoretsky ©   (2003-11-10 14:14) [12]

Это значит устаревшая технология обработки ошибок, сейчас рекомендуется использовать try блоки
У тебя не заработало, а ты спрятал голову в песок, как страус. Мол нет ошибок.


← →
mOOx_ ©   (2003-11-10 14:14) [13]

ф1 :)


← →
Vlad Oshin ©   (2003-11-10 14:17) [14]


> {$I-},{$I+} - что это значит?

директивы компилятора
да, эти, видимо устарели, раз говорят
я их переносил из паскаля ничего не правя :)


← →
Zheks ©   (2003-11-10 15:32) [15]

2 Anatoly Podgoretsky © (10.11.03 14:14) [12]

см. Anatoly Podgoretsky © (10.11.03 13:25) [5]



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

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



Память: 0.48 MB
Время: 0.017 c
1-65938
Serg
2003-11-11 12:28
2003.11.20
TTreeView


1-65864
Chlavik
2003-11-07 19:25
2003.11.20
TStatusBar и OwnerDraw какойто страшный глюк :)


1-65854
vlad_ir
2003-11-09 20:14
2003.11.20
Месяц прописью


1-65904
Alibaba
2003-11-11 16:42
2003.11.20
TListBox


1-65995
Denisiy
2003-11-10 15:25
2003.11.20
Звуковой сигнал с MessageDlg




   Наверх