Read/Write binary files after describing their specifications in code (similar to an ORM table schema)
Project description
BinaryFileParser
BinaryFileParser allows the user to create a binary file format specification in the form of a struct and then use it to read/write files.
Installation
On Linux:
$ python3 -m venv venv
$ source venv/bin/activate
$ pip install binary-file-parser
On Windows:
> py -m venv venv
> venv/Scripts/activate
> pip install binary-file-parser
Getting Started
This is a very basic script to give you an idea of how to use this library. Check out the API Reference (coming soon™) for documentation containing more details on how to use this library.
from binary_file_parser import BaseStruct, Retriever
from binary_file_parser.types import int32, uint64, str32, FixedLenStr
class Spam(BaseStruct):
file_version: str = Retriever(FixedLenStr[4], default = 0)
creator_name: int = Retriever(str32, default = 0)
saved_timestamp: int = Retriever(uint64, default = 0)
eggs: str = Retriever(int32, default = 0)
# read a binary file that has the above format
file = Spam.from_file("path/to/file")
# modify the creator name
file.creator_name = "Alian713"
file.eggs = 20
# write the modified data to a new file
file.to_file("path/to/write/to")
About the Author
If you have any questions, suggestions or feedback regarding the library, feel free to send me a message on discord!
Author | Discord |
---|---|
Alian713 | Alian713#0069 |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
binary-file-parser-0.0.2.tar.gz
(13.0 kB
view hashes)
Built Distribution
Close
Hashes for binary_file_parser-0.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9c3f3e154ce8c2bf8626eed3c5cc68c613cd647f467ae69958790c8307c3657d |
|
MD5 | 9f706d86af7641bce3009766d0bad173 |
|
BLAKE2b-256 | f39fd4b4dc188c604db262d35332ec2d8b3c545048c74402ce18fa0f900ad2ac |