Skip to content

sectorrent/jlibbencode

Repository files navigation

jlibbencode

This is an implementation of Bencode for Java. Bencode is used for DHTs, Torrents, and Google DataServers. Its a lightweight fast data serialization. Wikipedia

I have also made an implementation of Bencode with Rust.

Library

The JAR for the library can be found here: Bencode JAR

Usage

Here are some examples of how to use the Bencode library.

Bencode Array

//FROM LIST
ArrayList<String> l = new ArrayList<>();
BencodeArray bar = new BencodeArray(l);

//FROM BYTES
byte[] b; //ARRAY OF BYTES
BencodeArray bar = new BencodeArray(b);

//CREATE BENCODE
BencodeArray bar = new BencodeArray();

Bencode Object | Map

//FROM MAP
HashMap<String, String> l = new HashMap<>();
BencodeObject bob = new BencodeObject(l);

//FROM BYTES
byte[] b; //ARRAY OF BYTES
BencodeObject bob = new BencodeObject(b);

//CREATE BENCODE
BencodeObject bob = new BencodeObject();

Put | Get data

//ARRAY
bar.put(1000);
bar.get(0);

//MAP
bob.put("KEY", 100);
bob.get("KEY");

Encoding to byte array

bar.encode();

Readable String

System.out.println(bar.toString());

About

Java Bencode library

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages