37 lines
1.3 KiB
Markdown
37 lines
1.3 KiB
Markdown
# NBT Lib
|
||
|
||
Библиотека для работы с NBT (Named Binary Tag) в отрыве от Minecraft.
|
||
|
||
## Использование
|
||
|
||
### Чтение
|
||
|
||
Для чтения NBT из потока (`InputStream`) используется класс `NbtInputStream`:
|
||
|
||
```java
|
||
NbtInputStream nbtInputStream = new NbtInputStream(inputStream);
|
||
Tag tag = nbtInputStream.readTag();
|
||
```
|
||
|
||
Если поток данных предполагается сжатым (GZip), то вторым параметром в конструкторе `NbtInputStream` указываем на это:
|
||
|
||
```java
|
||
NbtInputStream nbtInputStream = new NbtInputStream(inputStream, true);
|
||
Tag tag = nbtInputStream.readTag();
|
||
```
|
||
|
||
### Запись
|
||
|
||
Для записи NBT в поток (`OutputStream`) используется класс `NbtOutputStream`:
|
||
|
||
```java
|
||
NbtOutputStream nbtOutputStream = new NbtOutputStream(outputStream);
|
||
nbtOutputStream.writeTag(new TagString("Hello world"));
|
||
```
|
||
|
||
Если необходимо сжатие данных (GZip), то вторым параметром в конструкторе `NbtOutputStream` указываем на это:
|
||
|
||
```java
|
||
NbtOutputStream nbtOutputStream = new NbtOutputStream(outputStream, true);
|
||
nbtOutputStream.writeTag(new TagString("Hello world"));
|
||
``` |