2014-09-04 42 views
-1

我有一个雇员的样本数据。解析文件的更好方法?

Brad Senior 
<Fname>Brad Junior</Fname> 
    CHICAGO, March 6 1990 - He is a great Java Developer. 
He has worked in XYZ company. 

数据的格式为:

Person's name 
<Fname> xxx </Fname> // Optional 
    Current Location, DOB - Description about his work. 

我可以用它和BufferedReader中使用如此多的条件来分析。

有没有更好的方法来削减这些内容(例如Regex)并将其存储在Employee对象中?

我不能使用外部库。

谢谢。

+0

如果数据是XML格式,请使用XML解析器...严重的是,这么多eaiser – MadProgrammer 2014-09-04 08:15:14

+0

数据是真正的XML格式,还是数据格式? – EpicPandaForce 2014-09-04 08:17:27

+0

如果它是标准格式,请使用解析器(即XML或其他)。正则表达式仅适用于常规语言(即,如果您有嵌套标签,例如'',它将不起作用)。在这种情况下,标记是最好的。 – Wolph 2014-09-04 08:17:47

回答

0

您可以使用解析器生成器作为Cup

当格式变得更复杂时,它非常有用。如果扩展文件格式,它还使解析器的维护更容易。

0

更好的是一个意见,所以你的问题天生无法回答。正如Tobías所说,解析器是有争议的,而且您的选择非常广泛。我建议行业标准ANTLRCup相反,因为它绝对没有任何我能找到的许可证信息。

+0

在下面的链接,你可以找到杯的许可证: http://www2.cs.tum.edu/projects/cup/install.php – 2014-09-04 09:30:23

+0

谢谢,我显然在寻找所有错误的地方。 – Alex 2014-09-04 09:35:34

+1

我无法使用外部库。你能提供其他方式吗? – Thinker 2014-09-04 09:40:08