我從服務器獲得的時間與Jul 27, 2011 8:35:29 AM
類似。我想將它轉換爲yyyy-MM-dd HH:mm:ss
。將日期時間轉換爲24小時格式
我也希望轉換時間爲24小時制。任何人都可以解決這個問題。我想得到的輸出就像2011-07-27 08:35:29
我從服務器獲得的時間與Jul 27, 2011 8:35:29 AM
類似。我想將它轉換爲yyyy-MM-dd HH:mm:ss
。將日期時間轉換爲24小時格式
我也希望轉換時間爲24小時制。任何人都可以解決這個問題。我想得到的輸出就像2011-07-27 08:35:29
試試這個:
String dateStr = "Jul 27, 2011 8:35:29 AM";
DateFormat readFormat = new SimpleDateFormat("MMM dd, yyyy hh:mm:ss aa");
DateFormat writeFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = null;
try {
date = readFormat.parse(dateStr);
} catch (ParseException e) {
e.printStackTrace();
}
if (date != null) {
String formattedDate = writeFormat.format(date);
}
你應該看看Java日期格式,特別是SimpleDateFormat。這裏有一些例子:http://download.oracle.com/javase/tutorial/i18n/format/simpleDateFormat.html - 但你也可以通過快速的谷歌找到更多的例子。
試試這個:
Date date=new Date("12/12/11 8:22:09 PM");
System.out.println("Time in 24Hours ="+new SimpleDateFormat("HH:mm").format(date));
只是一個提示,
嘗試使用而不是Java JodaTime,util.Date 它更強大和它有一個方法 toString(「」),你可以通過你想要的格式,如 toString(「yyy-MM-dd HH:mm:ss」);
我以下面給出的日期爲例,根據您的要求打印兩種不同格式的日期。
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();
}
如果您還有任何疑問,請回復。謝謝。
很好的答案vivek –
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);
}
}
輸出:
今天是:星期五11月2日16時11分27秒IST 2012
今天DD-MM-yyyy格式:2012年2月11日
在今天DD/MM/YY圖案:12年2月11日
今天DD-MM-YY:HH:MM:SS:12年2月11日:16:11:316
今天在DD-MM-YY:HH:MM:SSZ:12年2月11日:16:11:316 0530
kk = Hours in 1-24 format
hh= hours in 1-12 format
KK= hours in 0-11 format
HH= hours in 0-23 format
非常感謝..你是生命的救星.. –
IN兩行:
SimpleDateFormat simpleDateFormat=new SimpleDateFormat("hh:mm aa",Locale.getDefault());
FAJR = new SimpleDateFormat("HH:mm",Locale.getDefault()).format(simpleDateFormat.parse("8:35 PM");
這對我有效! – user1930402
這是使用的方法JODA。
輸入的例子是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+"";
}
隨着日曆它的工作原理如下:
//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
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);
我無法下午2:46轉換爲14:46與此代碼。我錯過了什麼嗎? – user1930402
@ user1930402您可以通過將您的讀取格式更改爲'hh:mm a'來完成此操作 - 您的輸入忽略了秒數(是一種猜測)。 –