我的时间戳为2015-02-12T12:47:17.101+05:30
。在java中,我只想获得MMM_dd_yyyy。我试过SimpleDateFormat类。但我无法得到它。你能告诉我如何获得月,日和年吗?
的更新:
public static void main(String[] a ) {
SimpleDateFormat sdf = new SimpleDateFormat("MMM_dd_yyyy");
System.out.println(sdf.format("2015-02-12T12:47:17.101+05:30"));
}
我收到java.lang.IllegalArgumentException错误。可能是什么问题?
答案 0 :(得分:4)
您的SimpleDateFormat
仅格式化日期和时间戳。您正在通过String
。
要正确执行此操作,请先将您拥有的字符串解析为日期。然后使用格式化程序对其进行格式化。
//Java 7 and above
try {
SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd'T'hh:mm:ss.SSSX");
Date date
date = inputFormat.parse("2015-02-12T12:47:17.101+05:30");
SimpleDateFormat outputFormat = new SimpleDateFormat("MMM_dd_yyyy");
System.out.println(outputFormat.format(date));
}catch(Exception e){
//cannot happen in this example
}
答案 1 :(得分:0)
像这样使用SimpleDateFormat:
public static void main(String args[])
{
// This is how to get today's date in Java
Date today = new Date();
//formatting date in Java using SimpleDateFormat
SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("MM_dd_yyyy");
String date = DATE_FORMAT.format(today);
System.out.println("Today in MM_dd_yyyy format : " + date);
}
答案 2 :(得分:0)
试试这个:
public static void main(String[] a) {
Timestamp timestamp = new Timestamp(System.currentTimeMillis());
DateFormat dateFormat = new SimpleDateFormat("MM-dd-yyyy HH:mm");
String text = dateFormat.format(timestamp);
System.out.println(text);
}
答案 3 :(得分:-1)
尝试使用以下代码:
SimpleDateFormat sdf = new SimpleDateFormat("MMM_dd_yyyy");
sdf.format(yourTimestamp);