Czas, który otrzymuję z serwera, jest jak Jul 27, 2011 8:35:29 AM
.
Chcę go przekonwertować na yyyy-MM-dd HH:mm:ss
.
Chcę również, aby przekonwertowany czas był w formacie 24-godzinnym. Czy ktoś może podać rozwiązanie tego problemu. Wynik, który chcę uzyskać, jest podobny2011-07-27 08:35:29
hh:mm a
- twoje dane wejściowe ignorują sekundy (jest to przypuszczenie).hh
doHH
i problem rozwiązany!H vs h to różnica między formatem 24-godzinnym a 12-godzinnym.
źródło
DateFormat format = new SimpleDateFormat("dd.MM.yyyy, HH:mm");
kk = Hours in 1-24 format hh= hours in 1-12 format KK= hours in 0-11 format HH= hours in 0-23 format
źródło
Spróbuj tego:
Date date=new Date("12/12/11 8:22:09 PM"); System.out.println("Time in 24Hours ="+new SimpleDateFormat("HH:mm").format(date));
źródło
Powinieneś przyjrzeć się formatowaniu daty w Javie, w szczególności SimpleDateFormat . Oto kilka przykładów: http://download.oracle.com/javase/tutorial/i18n/format/simpleDateFormat.html - ale możesz też znaleźć o wiele więcej dzięki szybkiemu Google.
źródło
Biorę przykładową datę podaną poniżej i drukuję daty w dwóch różnych formatach zgodnie z Twoimi wymaganiami.
String date="01/10/2014 05:54:00 PM"; SimpleDateFormat simpleDateFormat=new SimpleDateFormat("dd/MM/yyyy hh:mm:ss aa",Locale.getDefault()); try { Log.i("",""+new SimpleDateFormat("ddMMyyyyHHmmss",Locale.getDefault()).format(simpleDateFormat.parse(date))); Log.i("",""+new SimpleDateFormat("dd/MM/yyyy HH:mm:ss",Locale.getDefault()).format(simpleDateFormat.parse(date))); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); }
Jeśli nadal masz jakieś pytania, odpowiedz. Dzięki.
źródło
import java.text.SimpleDateFormat; import java.util.Date; public class DateFormatExample { public static void main(String args[]) { // This is how to get today's date in Java Date today = new Date(); //If you print Date, you will get un formatted output System.out.println("Today is : " + today); //formatting date in Java using SimpleDateFormat SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("dd-MM-yyyy"); String date = DATE_FORMAT.format(today); System.out.println("Today in dd-MM-yyyy format : " + date); //Another Example of formatting Date in Java using SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("dd/MM/yy"); date = DATE_FORMAT.format(today); System.out.println("Today in dd/MM/yy pattern : " + date); //formatting Date with time information DATE_FORMAT = new SimpleDateFormat("dd-MM-yy:HH:mm:SS"); date = DATE_FORMAT.format(today); System.out.println("Today in dd-MM-yy:HH:mm:SS : " + date); //SimpleDateFormat example - Date with timezone information DATE_FORMAT = new SimpleDateFormat("dd-MM-yy:HH:mm:SS Z"); date = DATE_FORMAT.format(today); System.out.println("Today in dd-MM-yy:HH:mm:SSZ : " + date); } }
Wynik:
Dzisiaj jest: piątek 02 listopada 16:11:27 IST 2012
Dzisiaj w formacie dd-MM-rrrr: 02-11-2012
Dzisiaj w układzie dd / MM / rr: 11.02.12
Dzisiaj w dd-MM-rr: HH: mm: SS: 02-11-12: 16: 11: 316
Dzisiaj w dd-MM-rr: HH: mm: SSZ: 02-11-12: 16: 11: 316 +0530
źródło
W dwóch wierszach:
SimpleDateFormat simpleDateFormat=new SimpleDateFormat("hh:mm aa",Locale.getDefault()); FAJR = new SimpleDateFormat("HH:mm",Locale.getDefault()).format(simpleDateFormat.parse("8:35 PM");
źródło
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date = new Date(); Date date2 = new Date("2014/08/06 15:59:48"); String currentDate = dateFormat.format(date).toString(); String anyDate = dateFormat.format(date2).toString(); System.out.println(currentDate); System.out.println(anyDate);
źródło
tylko wskazówka,
spróbuj użyć JodaTime zamiast java, util.Date jest znacznie wydajniejszy i ma metodę toString (""), dzięki której możesz przekazać żądany format doString ("yyy-MM-dd HH: mm: ss") ;
http://joda-time.sourceforge.net/
źródło
Z Kalendarzem działa to w następujący sposób:
//create first Calendar object Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.HOUR_OF_DAY, 15); // 3 PM // the same is calendar.set(Calendar.AM_PM, Calendar.PM); // choose PM mode calendar.set(Calendar.HOUR, 3); // 3 PM System.out.println( calendar.get(Calendar.HOUR) ); // AM_PM format System.out.println( calendar.get(Calendar.HOUR_OF_DAY) ); // 0-23 format
źródło
Jest to metoda wykorzystująca JODA.
Przykładem danych wejściowych jest
07/20/2015 01:46:34.436 AM
public static String get24HourFormat(String dateString){ Date date = new Date(); DateTime date1=new DateTime(); // String date=""; int hour=0; //int year=0; if(dateString!=null){ try { DateTimeFormatter formatter = DateTimeFormat.forPattern("MM/dd/yyyy hh:mm:ss.SSS aa"); DateTimeFormatter output = DateTimeFormat.forPattern("kk"); date1=formatter.parseDateTime(dateString); hour=date1.getHourOfDay(); System.out.println(output.print(date1)); // System.out.println(date); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } return hour+""; }
źródło