Итак, я родом из C-фона (первоначально изначально, хотя я не использовал этот язык почти 5 лет), и я пытаюсь разобрать некоторые значения из строки в Java. В C я бы использовал sscanf. В Java люди сказали мне "использовать Scanner или StringTokenizer", но я не вижу, как их использовать для достижения моей цели.
Моя строка ввода выглядит как "17-MAR-11 15.52.25.000000000". В C я бы сделал что-то вроде:
sscanf(thestring, "%d-%s-%d %d.%d.%d.%d", day, month, year, hour, min, sec, fracpart);
Но в Java все, что я могу сделать, это такие вещи, как:
scanner.nextInt();
Это не позволяет мне проверять шаблон, а для "MAR" мне приходится делать такие вещи, как:
str.substring(3,6);
Ужасный! Наверняка есть лучший способ?