偶只会一个一个字符取出来判别,再用
java.util.Calendar begin = Calendar.getInstance();
begin.set(year,month,);
应该有简单点的方法吧,各位指点一下吧。谢谢了
java.util.Calendar begin = Calendar.getInstance();
begin.set(year,month,);
应该有简单点的方法吧,各位指点一下吧。谢谢了
setTime(Date date)
String str = "20030402"; Calendar ca=Calendar.getInstance(); int year=Integer.parseInt(str.substring(0,4));//年
ca.set(Calendar.YEAR,year);
int month=Integer.parseInt(str.substring(4,6));//月,注意要减1,因为一月对应的是0
ca.set(Calendar.MONTH,month-1);
int day=Integer.parseInt(str.substring(6,8));//日,
//如果想要得到第二天的日期就加1,如果超过了当月的最大天数,Calendar会自动处理
ca.set(Calendar.DAY_OF_MONTH,day); Date date=ca.getTime();
System.out.println(date);
}
楼主的要求类似
干吗搞得这么复杂?
String str="2005-10-1 12:23:23";
DateFormat df=new SimpleDateFormat("yy-MM-dd hh:mm:ss");
Date d=df.parse(str);
public static void main(String[] args) throws ParseException {
String str="12:0:0";
String str1="0:0:0";
String str2="24:0:0";
DateFormat f= new SimpleDateFormat("hh:mm:ss");
Date now= f.parse(str);
System.out.println(now.toLocaleString());
now= f.parse(str);
System.out.println(now.toLocaleString());
now= f.parse(str);
System.out.println(now.toLocaleString());
}
输出为:
1970-1-1 0:00:00
1970-1-1 0:00:00
1970-1-1 0:00:00
请问:
时间输出怎么会都是0点;
public static void main(String[] args) throws ParseException {
String str="12:0:0";
String str1="0:0:0";
String str2="24:0:0";
DateFormat f= new SimpleDateFormat("hh:mm:ss");
Date now= f.parse(str);
System.out.println(now.toLocaleString());
now= f.parse(str1);
System.out.println(now.toLocaleString());
now= f.parse(str2);
System.out.println(now.toLocaleString());
} 时间输出怎么会都是0点;
SimpleDateFormat d1 = new SimpleDateFormat("yyyy-MM-dd");
System.out.println(d1.format(cal.getTime()));