我有多個文本文件,代表日誌條目,我需要稍後解析。每個文件的大小高達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