Convert.ToDateTime in Java

本文关键字:Java in ToDateTime Convert | 更新日期: 2023-09-27 18:24:18

这是我在c#中的代码。

DateTime gmtTime = Convert.ToDateTime(string.Format("{0} {1}", day[1], day[2])).Add(Convert.ToDateTime(time).TimeOfDay);

我在Java中尝试过的。

String month = "Jul";
        String day = "22";
        String gmtTime = String.format("%s %s", month, day);
        DateFormat df = new SimpleDateFormat("MMM dd");
        Date gmtDate = df.parse (gmtTime);

我进入Java的结果是1970年7月22日。如何像C#中那样获取当前年份?当我将字符串转换为DateTime时,年份就是当前年份。是否可以像我在c#代码中尝试的那样,将代码转换为Java?

希望取得好成绩。感谢

Convert.ToDateTime in Java

 Calendar cal=Calendar.getInstance();
 int year=cal.get(Calendar.YEAR);
 System.out.println(year);

将给出当前年份的

更改这些行:

String gmtTime = String.format("%s %s", month, day);
DateFormat df = new SimpleDateFormat("MMM dd");

对此:

String gmtTime = String.format("%s %s %s", month, day, Calendar.getInstance().get(Calendar.YEAR));
DateFormat df = new SimpleDateFormat("MMM dd yyyy");

尝试将年份添加到Java SimpledateFormat中,请参阅此处使用的格式http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html#year

DateFormat dateFormat = new SimpleDateFormat("MMM dd yyyy");
final Date currentTime = new Date();
final SimpleDateFormat sdf = new SimpleDateFormat("MMM d, yyyy hh:mm:ss a z");
// Set time zone  
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
System.out.println("Current Time: " + sdf.format(currentTime));

这里只是格式化当前日期-

final DateFormat reportDateFormat = new SimpleDateFormat("MM/dd/yyyy", Locale.ENGLISH);        
Date date = new Date();
String dateString = reportDateFormat.format(date);
System.out.println(dateString);