5 repositorios
Libraries designed to interpret and process complex binary file formats and legacy container structures.
Distinguishing note: Focuses on the low-level interpretation of binary structures, distinct from high-level data manipulation or UI components.
Explore 5 awesome GitHub repositories matching data & databases · Binary Data Parsers. Refine with filters or upvote what's useful.
SheetJS is a comprehensive library for parsing, manipulating, and generating complex spreadsheet file formats. It functions as a universal data processor that maps diverse binary, XML, and text-based file structures into a unified internal object model, allowing developers to create, read, and transform workbook data programmatically. The library distinguishes itself through a portable logic layer that provides a consistent execution environment across web browsers, server-side runtimes, and native desktop or mobile applications. By utilizing stream-based processing, it handles large files in
The library parses and writes legacy binary spreadsheet files by interpreting complex container formats and record structures to ensure accurate data preservation across older software versions.
Presto is a distributed SQL query engine designed for high-performance analytical processing across heterogeneous data sources. It functions as a data federation platform and massively parallel processing engine, allowing users to execute interactive queries against diverse storage systems without requiring data migration. By mapping remote metadata and structures to a unified relational namespace, it enables seamless cross-platform analysis through a standard SQL interface. The engine distinguishes itself through a pluggable connector architecture and a shared-nothing distributed processing
Provides specialized functions for concatenating, slicing, and measuring binary data sequences.
nom is a Rust parser combinator framework used to build complex parsers for binary and text data. It functions as an abstract syntax tree generator and a bit-level binary parser, allowing users to construct structured data by combining small, reusable parsing functions. The framework provides specialized support for zero-copy binary parsing, extracting data as slices from raw byte arrays to avoid memory allocations. It also includes a streaming data parser capable of processing partial input chunks from networks or files and signaling when additional input is required. The project covers a b
Processes binary formats using bit-level logic to extract specific data fields.
Racket es un lenguaje de programación de propósito general y multiparadigma de la familia Lisp, diseñado para la creación de lenguajes. Funciona como un banco de trabajo de lenguajes, proporcionando una plataforma para diseñar e implementar lenguajes de programación personalizados a través de un sistema flexible de macros y módulos. El sistema se distingue por ofrecer una suite integral para la ingeniería de semántica, permitiendo la construcción de subconjuntos de lenguajes especializados y capas educativas. Incluye herramientas para el diseño de lenguajes personalizados, como la generación de lexers y parsers, así como la capacidad de definir reglas de expansión de módulos y selección dinámica de lenguaje en tiempo de lectura. El proyecto proporciona un entorno de desarrollo integrado con un editor incorporado, depurador visual y un gestor de paquetes de software. Su superficie de capacidades se extiende a una biblioteca estándar de propósito general que cubre renderizado de gráficos 2D, procesamiento de datos binarios, integración con SQL y bases de datos deductivas, y la construcción de interfaces gráficas de usuario. El entorno admite la compilación de código fuente en archivos ejecutables independientes para su distribución.
Provides a domain-specific language for generating binary data parsers with backtracking and context-sensitivity.
Kaitai Struct es un framework para especificación binaria declarativa que proporciona generación automatizada de analizadores y serializadores a través de múltiples lenguajes de programación. Utiliza un lenguaje portátil específico del dominio para describir el diseño de archivos binarios y paquetes de red, convirtiendo estas especificaciones en código fuente para leer y escribir datos binarios. El sistema permite el procesamiento de datos entre lenguajes traduciendo una definición estructural única en código fuente nativo para lenguajes incluyendo C++, C#, Go, Java, JavaScript, Python y Rust. Este enfoque permite que la misma especificación de datos binarios se implemente a través de diferentes plataformas sin reescribir manualmente la lógica de análisis. El framework cubre el modelado y procesamiento de datos binarios, incluyendo la capacidad de gestionar punteros de lectura para navegación de offset y aplicar transformaciones de datos como descompresión y descifrado. También proporciona herramientas para la depuración de especificaciones de formato para validar el mapeo entre diseños de datos binarios y sus descripciones declarativas.
Automatically generates binary data parser source code for multiple languages from a declarative format specification.