0

ログにいくつかのエントリがあり、パターンマッチャーを使用してエントリをログから取得したいと思います。

ログエントリ

1223-12-23 00:00:00 exception : 1223. Operation Cannot be done
1223-12-24 00:00:01 exception : 1221. Operation Cannot be done

次のようなエントリを取得したい

文字列[]日付={1223-12-2300:00:00、1223-12-2400:00:01}文字列[]メッセージ={例外:1223。操作を実行できません。例外:1221。操作を実行できません。終わり}

これを行うための効率的な方法はありますか?

4

2 に答える 2

1

私はすでにFlat File Parsing Libraryを使用して同様のタスクを実行しました。

于 2012-11-12T21:06:49.253 に答える
0

私の他の答えよりも良い:

// dynamic list of strings for dates and messages
List<String> dates = new ArrayList<>();
List<String> messages = new ArrayList<>();
// split your logfile by line
String[] lines = yourLogFileContentAsString.split("\n");
for (String line : lines) {
    // dates are characters 0-19
    dates.add(line.substring(0, 20));
    // message starts at character 21
    messages.add(line.substring(21);
}
// you wanted arrays
String[] datesArray = dates.toArray(new String[0]);
String[] messagesArray = messages.toArray(new String[0]);
于 2012-11-12T21:38:28.493 に答える