Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.138.113.188] |
|
Сообщ.
#1
,
|
|
|
Допустим имеется Mem: TMemoryStream; и buf : array of Byte;
Как вставить buf в Mem с определенной позиции, не перезапись а именно вставка? |
Сообщ.
#2
,
|
|
|
1) Увеличить размер стрима и переписать его хвост с заданной позиции со смещением на размер buf
2) Записать buf c заданной позиции OldSize:=Mem.Size; Mem.Size:=OldSize + Length(buf); Mem.Position:=APos + Length(buf); Mem.WriteBuffer(pAnsiChar(Mem.Memory)[APos], OldSize-APos); Mem.Position:=APos; Mem.WriteBuffer(buf[0], Length(Buf)); |