我使用以下代码以"dd/MM/yyyy HH:mm:ss.SS"格式获取日期.
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class DateAndTime{
public static void main(String[] args)throws Exception{
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss.SS");
String strDate = sdf.format(cal.getTime());
System.out.println("Current date in String Format: "+strDate);
SimpleDateFormat sdf1 = new SimpleDateFormat();
sdf1.applyPattern("dd/MM/yyyy HH:mm:ss.SS");
Date date = sdf1.parse(strDate);
System.out.println("Current date in Date Format: "+date);
}
}
Run Code Online (Sandbox Code Playgroud)
并得到以下输出
Current date in String Format: 05/01/2012 21:10:17.287
Current date in Date Format: Thu Jan 05 21:10:17 IST 2012
Run Code Online (Sandbox Code Playgroud)
请建议我应该怎样做以相同的字符串格式显示日期(dd/MM/yyyy HH:mm:ss.SS),即我想要以下输出:
Current date in String Format: 05/01/2012 21:10:17.287
Current date in Date Format: 05/01/2012 21:10:17.287
Run Code Online (Sandbox Code Playgroud)
请建议
小智 18
的SimpleDateFormat
sdf=new SimpleDateFormat("dd/MM/YYYY hh:mm:ss");
String dateString=sdf.format(date);
Run Code Online (Sandbox Code Playgroud)
它会28/09/2013 09:57:19按预期提供输出.
Jon*_*eet 15
您不能 - 因为您正在调用Date.toString()哪个将始终包含系统时区(如果它是默认语言环境的默认日期格式).该Date值本身没有格式的概念.如果你想以特定的方式格式化它,使用SimpleDateFormat.format()...使用Date.toString()几乎总是一个坏主意.
Aha*_*med 12
以下代码给出了预期的输出.你想要的吗?
import java.util.Calendar;
import java.util.Date;
public class DateAndTime {
public static void main(String[] args) throws Exception {
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss.SS");
String strDate = sdf.format(cal.getTime());
System.out.println("Current date in String Format: " + strDate);
SimpleDateFormat sdf1 = new SimpleDateFormat();
sdf1.applyPattern("dd/MM/yyyy HH:mm:ss.SS");
Date date = sdf1.parse(strDate);
String string=sdf1.format(date);
System.out.println("Current date in Date Format: " + string);
}
}
Run Code Online (Sandbox Code Playgroud)