gpt4 book ai didi

python - NBT Parser Minecraft mca 文件不是 gzipped 文件错误

转载 作者:行者123 更新时间:2023-11-28 19:05:38 25 4
gpt4 key购买 nike

我尝试使用 NBT 1.4.1 从文件系统和 .mca 区域/anvil 文件中使用 Python 读取 Minecraft 世界 |模块(命名二进制标签读取器/写入器),它应该读取 Minecraft 中使用的 NBT 格式。它对 level.dat 等文件工作正常,但对 r.0.0.mca 等区域文件抛出错误

编辑:我指的是 minecraft 存储在 .minecraft/saves/"MyWorld"/文件夹中的自动生成的世界文件。如 level.dat (有效),以及存储在 .minecraft/saves/"MyWorld"/region/文件夹中的 mca 文件,例如 r.0.0.mca这是行不通的。我从我的世界之一上传了两个示例文件。

代码:

从 nbt 导入 nbt
level_file = nbt.NBTFile("level.dat", "rb") # 有效
region_file = nbt.NBTFile("r.0.0.mca", "rb")
#不起作用

错误:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.5/dist-packages/nbt/nbt.py", line 508, in __init__
self.parse_file()
File "/usr/local/lib/python3.5/dist-packages/nbt/nbt.py", line 532, in parse_file
type = TAG_Byte(buffer=self.file)
File "/usr/local/lib/python3.5/dist-packages/nbt/nbt.py", line 85, in __init__
self._parse_buffer(buffer)
File "/usr/local/lib/python3.5/dist-packages/nbt/nbt.py", line 90, in _parse_buffer
self.value = self.fmt.unpack(buffer.read(self.fmt.size))[0]
File "/usr/lib/python3.5/gzip.py", line 274, in read
return self._buffer.read(size)
File "/usr/lib/python3.5/_compression.py", line 68, in readinto
data = self.read(len(byte_view))
File "/usr/lib/python3.5/gzip.py", line 461, in read
if not self._read_gzip_header():
File "/usr/lib/python3.5/gzip.py", line 409, in _read_gzip_header
raise OSError('Not a gzipped file (%r)' % magic)
OSError: Not a gzipped file (b'\x00\x00')

有什么关于如何让它工作的建议吗?

最佳答案

r.0.0.mca 绝对没有压缩。大约 80% 的字节为零。

关于python - NBT Parser Minecraft mca 文件不是 gzipped 文件错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47414426/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com