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

Вниз

pbyte   Найти похожие ветки 

 
Vasa777   (2013-07-20 00:16) [0]

x,Len:integer;pbData:pbyte;st,st1:tfilestream;a1,a2:byte;
..
len:=1024;
repeat
x:=st.Read(pbData^,Len);
..
// как вот тут в начало pbData вставить a1, а в конец a2?
..
st1.Write(pbData^,Len+2);
until ..


 
RWolf ©   (2013-07-20 01:34) [1]

никак, в файл нельзя вставлять, можно только дописывать и перезаписывать.
если надо вставить в начало, придётся считать и перезаписать весь файл.


 
Vasa777   (2013-07-20 01:40) [2]

мне не в файл надо вставлять (ну в конечном итоге в него, st1 открыт на запись), а в то куда данные считываются.
я же могу обращатся к конкретным байтам как pbdata[0..len-1].

чтобы было как в строках Insert(a1,pbdata,0) и Insert(a2,pbdata,length(pbdata))


 
RWolf ©   (2013-07-20 01:40) [3]

[1] выше не читаем, торможу на ночь глядя.
не надо ничего вставлять в буфер, просто пишем в поток a1, потом pbData и a2.


 
Vasa777   (2013-07-20 01:44) [4]

++ и st1.write(a1,1);st1.Write(pbData^,x);st1.write(a2,1);
тоже не катит. нужно вставить именно в pbData до ее записи в st1


 
Vasa777   (2013-07-20 01:47) [5]

до repeat выделен буфер getmem(pbdata,len+2);


 
RWolf ©   (2013-07-20 01:48) [6]

проще всего выкинуть байты и буферы, разместить данные в AnsiChar/RawByteString, а затем складывать их как угодно.


 
Vasa777   (2013-07-20 01:51) [7]

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


 
Vasa777   (2013-07-20 01:53) [8]

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


 
RWolf ©   (2013-07-20 02:01) [9]

нет таких функций.


 
Vasa777   (2013-07-20 02:03) [10]

набрел вот http://www.delphipages.com/forum/showthread.php?t=148288
и http://stackoverflow.com/questions/15388183/widechar-to-bytes
завтра уже читать буду, ща спать хочу..



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

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

Наверх




Память: 0.48 MB
Время: 0.005 c
15-1383465477
Интересующися
2013-11-03 11:57
2014.04.27
Ищу компонент (наверно какой-то TPanel)


15-1383681339
indeets
2013-11-05 23:55
2014.04.27
apache + php as module


15-1383638933
Григорьев Иван
2013-11-05 12:08
2014.04.27
Как сохранить файл Excel?


1-1314088912
malphunction
2011-08-23 12:41
2014.04.27
[Delphi XE] Дочерняя форма НЕ активизировала родительское окно


15-1383227337
брат Птибурдукова
2013-10-31 17:48
2014.04.27
"Сейчас позднее, чем ты думаешь"