Могу ли я разобрать дату, чтобы она соответствовала строковому массиву? - PullRequest
1 голос
/ 02 ноября 2011

У меня в конструкторе есть массив String, который должен читать строку в документе .txt с использованием bufferedreader. Он содержит строки Int´s и две даты. Моя структура выглядит так:

Private String Name;
Private int Number;
Private Date BDate;

String[] splitsarray = line.split("%");     
this.Name= splitsarray [0];  
this.Number= Integer.parseInt(splitsarray [1]);

Я не хочу делать что-то вроде this.BDate= splitsarray [2], но я не могу понять, как заставить это работать.

Любые советы или подсказки для меня?

Ответы [ 2 ]

2 голосов
/ 02 ноября 2011

Передайте правильный шаблон даты в аргументе конструктора SimpleDateFormat .

SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy"); 
this.BDate = formatter.parse(splitsarray [2]); 
0 голосов
/ 02 ноября 2011

Вам нужно взглянуть на классы текстового формата JDK: http://download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html

Или, альтернативно, посмотрите на использование чего-то вроде Joda Time, которое является внешней зависимостью, но имеет богатый API.

Пример:

String date = "2011-11-05T09:00:00";
java.text.SimpleDateFormat fmt = new java.text.SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
java.util.Date d = fmt.parse(date);
System.out.println(d);
//Sat Nov 05 09:00:00 GMT 2011
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...