kevin lynx
kevin lynx

Reputation: 895

How to create a binary stream (not a file) in Common Lisp?

I have a function which output some binary data to a stream. But the stream is abstract, which means the stream can be a file stream, or some other streams. But the stream must be a binary stream which support write-byte function. I searched but not found the answer.

What I want to do is, I have a function which will convert some data to a gif. But I donot want to output the data to a file, I want to output it to something in memory.

Thanks.

Upvotes: 5

Views: 2469

Answers (2)

Ramarren
Ramarren

Reputation: 2520

The flexi-streams library provides, among other things, in-memory binary streams.

Upvotes: 3

ffriend
ffriend

Reputation: 28492

"File in memory" - is just a byte array. So all you need is to read your data from stream and write it to one-dimensional array (vector). For more information on arrays in CL see this.

Upvotes: 2

Related Questions