THPDFRandomAccessSource.TransferAt Method
Copia bytes a partir de Offset para um stream de destino em chunks de 64 KB e retorna o número de bytes transferidos
Declaração
function TransferAt(Offset, Count: Int64;
Destination: TStream): Int64; virtual;
Unidade
HPDFDoc
Parâmetros
| Nome | Finalidade |
|---|---|
Offset | Offset de bytes baseado em zero de onde começar a ler |
Count | Número de bytes a transferir, limitado aos bytes restantes após Offset |
Destination | Stream que recebe os bytes copiados; não pode ser nil |
Valor de retorno
Número de bytes realmente gravados em Destination; zero quando Offset é negativo, Count não é positivo, ou Offset está no tamanho da fonte ou além dele
Notas de uso
- Dispara
EArgumentNilExceptionquandoDestinationé nil eEStreamErrorquando oReadAtsubjacente reporta uma contagem de chunks inválida - O loop de cópia para cedo quando
ReadAtretorna zero bytes, então fontes curtas transferem apenas o que existe - Faça override em fontes derivadas para fazer streaming de dados em cache ou vindos da rede sem passar por um buffer intermediário