У меня есть этот файл журнал образец здесь:Как добавить разделители между строками в Java?
LOG FILE:
Jan 1 22:54:17 drop %LOGSOURCE% >eth1 rule: 7; rule_uid: {C1336766-9489-4049-9817-50584D83A245};
Jan 1 22:54:22 drop %LOGSOURCE% >eth1 rule: 7; rule_uid: {C1336766-9489-4049-9817-50584D83A245};
Jan 1 22:54:23 drop %LOGSOURCE% >eth1 rule: 7; rule_uid: {C1336766-9489-4049-9817-50584D83A245};
Jan 1 22:54:41 drop %LOGSOURCE% >eth1 rule: 7; rule_uid: {C1336766-9489-4049-9817-50584D83A245};
Разделитель по умолчанию является точка с запятой (;), и я хочу, чтобы отделить метку времени и «падение», а также «падение» с «% LOGSOURCE% "с этим разделителем. Я побежал код (см ниже, он успешен, но я не получил мой ожидаемый результат весь этот код, чтобы вставить разделитель.).
Мой код: общественный класс LogParser {
List<String> temps = new ArrayList<String>();
// while loop
while (inFile1.hasNext()) {
// find next line
String token1 = inFile1.next();
temps.add(token1);
}
inFile1.close();
String[] tempsArray = temps.toArray(new String[0]);
for (String s : tempsArray) {
Pattern p = Pattern.compile("([a-zA-Z]{3}\\s\\d{1,2}\\s\\d{2}:\\d{2}:\\d{2})(\\s)(drop)");
Matcher matcher = p.matcher(s);
while (matcher.find()) {
//System.out.println(matcher.group(0));
}
//System.out.println(s);
}
Google: разбиваться с разделителем в java' –
Что вы пробовали до сих пор, и какие проблемы вы получили, чтобы он работал? С другой стороны, глядя на ваше имя пользователя, возможно, это неправильный вопрос, чтобы спросить вас – ajb