我正在尝试解析一个我没有创建的yaml文件,以及一个我无法编辑的文件。文件的结构是
681:
activities:
copying:
time: 480
manufacturing:
materials:
- quantity: 86
typeID: 38
products:
- quantity: 1
typeID: 165
time: 600
research_material:
time: 210
research_time:
time: 210
blueprintTypeID: 681
maxProductionLimit: 300
该文件的长度约为144,000行,每个都遵循上述结构。我遇到的问题是,因为它使用反射解析为POJO,结构中的第一个键(在这种情况下为681:
)是一个整数。 Java中的字段不能仅仅是一个数值,所以当解析发生时,我得到以下错误:
Exception in thread "main" Can't construct a java object for tag:yaml.org,2002:org.zephyrion.eve.assetmanager.Blueprint; exception=Cannot create property=682 for JavaBean=org.zephyrion.eve.assetmanager.Blueprint@2446bd09; No JavaBean properties found in org.zephyrion.eve.assetmanager.Blueprint
in 'reader', line 1, column 1:
681:
^
有没有办法阻止snakeyaml将值解析为整数,而是将其解析为字符串?我尝试过使用自定义解析器,并且一起禁用整数解析,但仍然无效。