2014-12-03 2 views
0

У меня есть дата в строке и время в строке, теперь мне просто нужно добавить их в формате RFC 3339 и вставить в объект события, который не принимает строку. можете видеть мой код нижеКак добавить дату и время в формате RFC3339 в java?

String date_from=req.getParameter("date_from").toString(); 
    String date_end=req.getParameter("date_end").toString(); 
    String time_from=req.getParameter("time_from").toString(); 
    String time_to=req.getParameter("time_to").toString(); 

    // here i m converting date_from which is string into Date object 
    java.sql.Date dateFrom= java.sql.Date.valueOf(date_from); 
    java.sql.Date dateTo= java.sql.Date.valueOf(date_end); 




    String dateTimeStart=date_from+"T"+time_from+"Z"; 
    String dateTimeTo=date_end+"T"+time_to+"Z"; 

     //now here i just need to convert (string)dateTimeStart into object so that i able to use into my event class 

      Event event = new Event(); 
      event.setSummary(userName); 

      DateTime start = new DateTime(dateFrom, TimeZone.getTimeZone("Asia/Kolkata")); 
      DateTime end = new DateTime(dateTo, TimeZone.getTimeZone("Asia/Kolkata")); 

Привет, я пытаюсь сделать более ясным, что мои сомнения:

DateTime end = new DateTime(dateTo, TimeZone.getTimeZone("Asia/Kolkata")); 

см выше строку кода, в первый аргумент я хочу установить формат «YYYY-MM-ddTHH: mm: ssZ» дата «yyyy-MM-dd» у меня есть переменная «dateTo», она не содержит времени с ней. Чтобы получить время в час, inutes и секунды, которые я принимаю время в переменной time_to

 String time_to=req.getParameter("time_to").toString(); 

я использовал следующий кусок кода, чтобы преобразовать в дату объекта и используемый выше в первой строке

 java.sql.Date dateTo= java.sql.Date.valueOf(date_end); 

же я сделал с течением времени, но когда я пытаюсь concate как дата и время, это дает мне ошибку, когда я использую он в качестве первого аргумента в следующей строке кода

DateTime end = new DateTime(dateTo, TimeZone.getTimeZone("Asia/Kolkata")); 
+0

RFC 3339 является профилем [ISO 8601] (http://en.m.wikipedia.org/wiki/RFC_3339). Найдите StackOverflow для «ISO 8601», чтобы найти сотни вопросов и ответов. –

+0

Библиотека Joda-Time предлагает класс 'Interval' для представления промежутка времени. Вы можете найти это полезным здесь. –

+0

Ваш вопрос непонятен. Вы говорите, что хотите использовать RFC 3339 для перехода к объекту, который не принимает строку. Но RFC 3339 * - это строковый формат. –

ответ

0

Использование new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssXXX") для разбора/формат даты. Проверьте SimpleDateFormat JavaDoc для деталей.

+0

появляется сообщение об ошибке «Невозможно отформатировать данный объект как дату» – ashishSober

+0

Каков тип и значение объекта, который вы пытаетесь проанализировать? –

+0

Фактически у меня есть дата и время в строковой переменной, после конкатенации (yyy-dd-mm t hh: mm: ss Z) необходимо преобразовать ее в объект. – ashishSober

Смежные вопросы