我正在尝试使用 Java 的 Scanner 库解析一个大文件的一部分,但我很难确定解析此文本的最佳路径。
SECTOR 199
FLAGS 0x1000
AMBIENT LIGHT 0.67
EXTRA LIGHT 0.00
COLORMAP 0
TINT 0.00 0.00 0.00
BOUNDBOX 7.399998 8.200002 6.199998 9.399998 8.500000 7.099998
COLLIDEBOX 7.605121 8.230770 6.200000 9.399994 8.469233 7.007693
CENTER 8.399998 8.350001 6.649998
RADIUS 1.106797
VERTICES 12
0: 1810
1: 1976
2: 1977
3: 1812
4: 1978
5: 1979
6: 1820
7: 1980
8: 1821
9: 1981
10: 1982
11: 1811
SURFACES 1893 8
它有一些可选字段(SOUND、COLLIDEBOX),所以我不能像处理文件的前一部分那样按特定顺序解析。我不确定如何在不使其效率极低的情况下执行此操作,目前我一直在考虑解析每一行,然后将其与 String.split("\s+") 拆分以获取值,但我我很好奇我还有什么其他选择。:\