Насколько мне известно, при регистрации он содержит информацию о часовом поясе. Вы можете расставить приоритеты по шаблону с большим количеством данных времени. Если данные совпадают, то нет проблем с их приоритетностью.

тим получить правильный формат даты из файлов LOG, сгенерированных разными системами с различным языком и механизмом журналов.

Мы думали, что это может быть сделаноSimpleDataFormat.parse а такжеtry-catch exception путь. Но следующий код показывает проблему.

    String tryparseString = "18-01-22 00:03:34:071";
    try {
        SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        System.out.println(sdf1.parse(tryparseString));
        System.out.println(sdf1.format(sdf1.parse(tryparseString)));
        System.out.println("Yeah! We found a CAN PARSE datefromat = " + sdf1.toPattern());
        SimpleDateFormat sdf2 = new SimpleDateFormat("yy-MM-dd HH:mm:ss:SSS");
        System.out.println(sdf2.parse(tryparseString));
        System.out.println(sdf2.format(sdf2.parse(tryparseString)));
        System.out.println("Yeah! We found a CAN PARSE datefromat = " + sdf2.toPattern());
    } catch (ParseException e) {
        e.printStackTrace();
    }

Это получилось в результате:

Sat Jan 22 00:03:34 CST 18
0018-01-22 00:03:34
Yeah! We found a CAN PARSE datefromat = yyyy-MM-dd HH:mm:ss
Mon Jan 22 00:03:34 CST 2018
18-01-22 00:03:34:000
Yeah! We found a CAN PARSE datefromat = yy-MM-dd HH:mm:ss:SSS

Так,"18-01-22 00:03:34:071" оба могут быть отформатированы сyyyy-MM-dd HH:mm:ss а такжеyy-MM-dd HH:mm:ss:SSS.

Первый далеко верен.

Итак, есть ли способ определить правильный формат даты из нескольких форматов даты?

Ответы на вопрос(2)

Ваш ответ на вопрос