eclipse Java公历到特定格式
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/17005679/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Java Gregorian calendar to specific format
提问by Cristian Eduardo Lehuede Lyon
I've been trying to format a gregorian calendar to a specific format as to fulfill a webservice but I don't know how to make it elegant. Right now I'm trying to format by getting the hour of minute and parsing them but it looks horrible. I need to format it as xsd:dateTime 2001-10-26T21:32:52, 2001 Any helps appreciated. Thanks!
我一直在尝试将公历格式化为特定格式以实现网络服务,但我不知道如何使其优雅。现在我正在尝试通过获取分钟并解析它们来格式化,但它看起来很糟糕。我需要将其格式化为 xsd:dateTime 2001-10-26T21:32:52, 2001 任何帮助表示赞赏。谢谢!
回答by Micho Rizo
Should be straight foward to adjust the format to what you need ... this produces "2013-06-08T20:56:25Z"
应该直接将格式调整为您需要的格式......这会产生“2013-06-08T20:56:25Z”
SimpleDateFormat timeFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
timeFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
String time = timeFormat.format(new Date());
回答by Chintan Soni
Try this:
尝试这个:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class ConversionExamplesDate {
// Convert from String to date
private void stringToDate() {
try {
Date date1;
date1 = new SimpleDateFormat("MM/dd/yy").parse("05/18/05");
System.out.println(date1);
Date date2 = new SimpleDateFormat("MM/dd/yyyy").parse("05/18/2007");
System.out.println(date2);
} catch (ParseException e) {
e.printStackTrace();
}
}
// Convert from millisecs to a String with a defined format
private void calcDate(long millisecs) {
SimpleDateFormat date_format = new SimpleDateFormat("MMM dd,yyyy HH:mm");
Date resultdate = new Date(millisecs);
System.out.println(date_format.format(resultdate));
}
private void writeActualDate(){
Calendar cal = new GregorianCalendar();
Date creationDate = cal.getTime();
SimpleDateFormat date_format = new SimpleDateFormat("MMM dd,yyyy HH:mm");
System.out.println(date_format.format(creationDate));
}
public static void main(String[] args) {
ConversionExamplesDate convert = new ConversionExamplesDate();
convert.stringToDate();
convert.calcDate(System.currentTimeMillis());
convert.writeActualDate();
}
}