8 packages tagged with “LittleEndian”
Easily encode numbers to and from binary format
Provides a big-endian and little-endian BitConverter that convert base data types to an array of bytes, and an array of bytes to base data types, regardless of machine architecture.
This .NET library provides a simple API to read/write bytes from/to streams and spans using user-specified endianness. By default, supported types include primitives, enums, arrays, strings, and some common .NET struct types. Objects can also be read/written from/to streams via reflection and attributes. The developer can use the API even if their target behavior or data is not directly supported by using the IBinarySerializable interface, inheritting from the reader/writer, or using the manual Span methods without streams. Performance is the focus when not using reflection; no allocations unless absolutely necessary! Project URL and Samples ― https://github.com/Kermalis/EndianBinaryIO
Gulliver is a C# utility package and library engineered for the manipulation of arbitrary sized byte arrays accounting for appropriate endianness and jagged byte length. Functionality includes the as previously unsupported standard set of boolean algebraic operations, bitwise shifting, and unsigned endian aware mathematical addition, subtraction, and comparison.
Basic IO library
A source generator to generate TryRead/Write Little/BigEndian methods for struct/class definitions for binary serialization.
VB.NET source file that contains an extension method that allows to convert a positive BigInteger into a byte array, taking into account the desired endianness. Supported versions: .NET Framework 4.0 .NET Framework 4.5 .NET Framework 4.5.1 .NET Framework 4.5.2 .NET Framework 4.6 .NET Framework 4.6.1 Language requirement: Visual Basic 10 (shipped in 2010 with .NET 4.0) This package is part of the "SingleFile.VB" collection that consists of small utilities in the form of VB.NET source files, usually two of them per package, namely the code file and the test file (Microsoft standard unit tests) as well as the license files that are shared over all "Single.VB" packages. Some philosophy: Extension methods and other static utility functions are not shared accross projects resp. assemblies but included wherever they are needed. For that reason they are declared "Friend" and namespace-less as they are supposed to be part of the project's current namespace. Unit test files are added directly to the project and declared "Public" because of limitations of that framework, but they are only compiled in debug mode (through a compiler directive that checks for the "DEBUG" keyword). This allows to keep the tests very near to the code which simplifies access to internal members but does not bulk the published version. The reference to "Microsoft.VisualStudio.TestTools.UnitTesting" (assembly "Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll") is only needed during development and may be declared with "Copy Local = False". The NuGet package version is global across all "Single.VB" packages, and they always reference other packages of the same version (most recent at the time of publishing). This greatly simplifies my dependency handling and therefore improves the quality of the NuGet packages, but may leed to an updated package that does not contain any code change. I apologize for that inconvenience. Your feedback and/or contribution is welcome. Please contact me on singlefile.vb@gmail.com.