我有多个文本文件,代表日志条目,我需要稍后解析。每个文件的大小高达1M,我有大约10个文件。 的每一行都具有以下格式:根据时间戳排序+合并多个文件的行
Timestamp\tData
我必须合并所有文件和时间戳值的条目进行排序。无法保证1个文件的条目按照时间顺序排列。
什么是最聪明的方法?我Pseudo'd代码如下所示:
List<FileEntry> oneBigList = new ArrayList<FileEntry>();
for each file {
parse each line into an instance of FileEntry;
add the instance to oneBigList;
}
Collections.sort(oneBigList according to FileEntry.getTimestamp());
yup,对于每个1MB的10个文件,树图应该足够多。实际上,TreeSet,因为不需要地图功能,是吗? – 2010-07-28 09:24:28
如果你不需要查找访问'TreeSet'会很好,是的。 – rsp 2010-07-28 09:47:11
我使用了TreeSet方法,它工作正常。小型基准测试显示,Collections.sort()和TreeSet(分别为151ms和170ms)(每种方法10次尝试的平均值)与150k测试数据(包括文件打开+阅读) – f1sh 2010-07-28 10:05:42