A simple Scala library for parsing fixed-length format.
A graceful playground for Shapeless and Cats libraries.
You can find the fixed-length library on Maven Central
Add the library to your dependencies:
Library is cross-compiled for Scala 2.12 and 2.13.
libraryDependencies += "com.github.atais" %% "fixed-length" % "1.1.0"
For Scala 2.10 and 2.11 the latest version is:
libraryDependencies += "com.github.atais" %% "fixed-length" % "0.4.1"
Please find example test scenarios describing simple use cases:
Describe your class with an Encoder, Decoder or Codec typeclass and Parse away!
A fixed position in line, where the field begins
A fixed position in line, where the field ends
(default value is Alignment.Left)
Alignment of the field's value in the given area of size end - start
Available options:
Alignment.LeftAlignment.Right
(default value is ' ')
Fills the remaining space in the given area with the padding Char.
Warning! Wrong selection of padding char may cause decoding issues!
(default value is Truncation.None)
Truncates a field according to the specified start and end position. Keeping the left most characters with Truncation.Left and the right most characters with Truncation.Right.
Available options:
Truncation.LeftTruncation.RightTruncation.None
(default value is null)
The default value of a field, which will be used in case of any decoding error.
Warning! This will surpress any decoding errors!
sbt release
prepare file sonatype.sbt in ~/.sbt/1.0/ with content:
credentials += Credentials("Sonatype Nexus Repository Manager",
"oss.sonatype.org",
USERNAME,
PASSWORD)