A stream editor that can be invoked by another java program or also the command line. It can handle binary data too. Unlike newline based programs like sed, it allows different ways of reading the stream through the traverser, buffer and commands interfaces. A traverser decides how the data is read. This data is stored in the buffer. The commands decide what to do with this data.
All data is handled as characters, by specifying an encoding. For binary data, the encoding ISO-8859-1 is used by default, has 256 single-byte characters. Data in the buffer is available as a charsequence to the commands for stuff like regex matching etc. The output can be redirected to a file, and an output encoding can be specified.The commands can also store/retrive arbitrary data for later use in a map. Evaluation of expressions in commands is done using Apache Jexl, and custom functions can also be used. Sample java usage and sample command line usage examples are included.
- Support for binary/text-data and java-supported charsets
- Support for regular expressions and expression evaluation using Jexl
- Usage via Command-line or Java
great app, works nicely