JuliaIO / BufferedStreams.jl

Fast composable IO streams
MIT License
42 stars 20 forks source link

Default sources for common data encoding formats (hexdump, base64 etc.) #42

Closed sambitdash closed 6 years ago

sambitdash commented 7 years ago

Hi All,

Recently, I was implementing a PDF file parser and as part of the development I needed support for various data decoding filters while reading the data using BufferedInputStream. For example, data read from the file was in bin hexdump or was in Base64 encoding or run length encoding.

I had to implement a few sources for the same. However, I am wondering if some of the filters can be developed as part of this package itself as I am sure others may get benefited with these added functionality.

regards,

Sambit

bicycle1885 commented 7 years ago

Hi,

That sounds in the scope of TranscodingStreams.jl, which provides byte-stream to byte-stream transformation interfaces by wrapping an IO stream. I mainly target it to lossless compression formats but theoretically it can support any codec like base64. The internals are not well documented yet but other packages (e.g. CodecZlib.jl) may be helpful to grasp how it works.

I'm going to replace this package with TranscodingStreams.jl in the BioJulia project.

sambitdash commented 7 years ago

Thanks. I will look into that package. I used Libz.jl package earlier. May be it's apt to move to CodecZlib.jl.

sambitdash commented 6 years ago

Closing at alternates exist.