DreamSoulFire
先叠个甲, 我的java基础很差, 很多地方会有铸币操作/脑子转不过来, 各位大佬要喷可以喷轻点

我的做法如下:
通过使用itemNBTAPI的NBT.readNBT方法获取到物品的NBTCompound
然后遍历所有的keys通过getType(key)的方式获取所有key的nbt类型, 即 穷举法
将nbt转为map储存进文件

序列化我使用了两种 snakeyaml与Gson
但是序列化时会将nbt中的array转为list
如: UUID:[I;5,5,5,6] 会变成 UUID: [5, 5, 5, 6]
反序列化时则依旧是list
且变成list的uuid是不被NBTItem中的convertNBTtoItem方法所接受的
所以物品nbt反序列化后会与原物品不一致
这只是个例子, 还有很多地方的nbt与原物品不一致[大嘘]
也可能是我item-nbt-api的用法不对吧......


涉及代码:





src.zip

(4.63 KB, 下载次数: 0)






希望各位大佬能帮帮我

第一页 上一页 下一页 最后一页