站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题请问一个日期格式化的问题

请问一个日期格式化的问题

摘要: 请问一个日期格式化的问题


我用SimpleDateFormat parse("2005-09-15")出一个日期curDate后,用DateFormat的format来format它,但是format后的结果日期有问题,代码如下,
import java.util.*;
import java.text.*;

public class SysCurDate
{
public static void main(String args[])
{

Date curDate;
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-mm-dd");
try{
curDate=sdf.parse("2005-09-15");
System.out.println(sdf.format(curDate));//此句显示的是2005-9-15
DateFormat df=DateFormat.getDateInstance(DateFormat.FULL);
System.out.println(df.format(curDate));//但是此句显示的则是2005-1-15
}
catch(ParseException e)
{
System.exit(1);
}
}
}
输出:
2005-09-15
2005年1月15日 星期六

两个日期本来应该一样,但是月份老是不对,不管怎么该日期,输出的都是1月
请各位帮我看看,怎么同一个Date,两种格式化出来的结果会有这么大的差别啊?





new SimpleDateFormat("yyyy-mm-dd");改成new SimpleDateFormat("yyyy-MM-dd");即可


你的格式化串有问题,不是yyyy-mm-dd,改成yyyy-MM-dd。因为m是定义分钟数的。





package sunscjp;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
* DateTest
* @author zeyuphoenix
*/
public class DateTest {
/**
* @param args String
*/
public static void main(String args[]){
//Date
Date curDate;
SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
try{
//SimpleDateFormat
curDate=simpleDateFormat.parse("2005-09-15");
System.out.println(simpleDateFormat.format(curDate));
//DateFormat
DateFormat dateFormat=DateFormat.getDateInstance(DateFormat.FULL);
System.out.println(dateFormat.format(curDate));
}
catch(ParseException e)
{
System.exit(1);
}
}
}

这样就可以了,你的FORM格式错误!


多谢各位!!!!


↑返回目录
前一篇: java中如何加入回车键功能?
后一篇: java调用postgre数据库游标的问题