我有一个大文本文件,其结构类似于这样的大树:
{ SomeType
- parameter1 = value;
- parameter2 = { SomeType2
-paramter 1 = { SomeType3
...
}
- parameter3 = { SomeType4
...
- name = "name";
...
}
- name = "name";
- more paramters;
}{ SomeType
- parameter1 = value;
- parameter2 = { SomeType2
-paramter 1 = { SomeType3
...
}
- parameter3 = { SomeType4
...
- name = "name";
...
}
- name = "name";
- more paramters;
}
该文件有超过10k行,现在我需要查找与某种类型相关联的所有名称。
我遇到的问题是,对于某种类型,名称行通常是Type之后的第一行,但在其他地方,它是在很多其他具有自己名称的Subtypes之后等等。 所以我不能一行一行地搜索该类型,然后获得包含“name”的下一行。同样的类型可以再次找到更深层次。
我似乎无法找到一个有效的算法,我可以用java实现。
答案 0 :(得分:0)
如果在您的情况下可行,我建议您将数据表示更改为已知的表示模型(如XML或JSON)之一,并将解析器机制用于具体的数据表示格式。幸运的是,XML和JSON都有很多稳定有效的解析器。