将日期从字符串转换为日期类型时出现问题

时间:2016-12-16 03:48:23

标签: java java-ee

下面是我用来添加现有日期的天数的代码..它给了我字符串输出,我希望它再次转换为日期格式...我已经尝试了格式但它给出了put - >

日期日期= sdf.parse(dt); sysout(日期) - 我 - 2008年5月5日00:00:00 PDT 2008 但我希望它为YYYY-MM / DD

sdf.format(date) - 给我2008-05-05,我正在寻找,但它是一个字符串对象...但我希望将其转换为DATE类型

    String dt = "2008-01-01";  // Start date
    System.out.println("start date "+dt);
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar c = Calendar.getInstance();
    c.setTime(sdf.parse(dt));
    c.add(Calendar.DATE, 125);  // number of days to add
    dt = sdf.format(c.getTime());
    System.out.println("c.getTime() "+c.getTime());
    System.out.println("end date "+dt);

     Date date = sdf.parse(dt);
    System.out.println("last but one date in DATE form -->" +date);
     System.out.println("last formatted date in string form "+sdf.format(date));

2 个答案:

答案 0 :(得分:0)

您创建了正确的格式。 SimpleDateFormat sdf = new SimpleDateFormat(" yyyy-MM-dd");

但您使用不当。你应该使用 sdf.format(your_unformated_date);

答案 1 :(得分:0)

下面是一个示例代码,它将使用SimpleDateFormat Class将日期从String转换为Date类型:

public static void convert()
{
     String str="10:25:35";
     SimpleDateFormat sdf=new SimpleDateFormat("hh:mm:ss");
     System.out.println(sdf.format(str));
 }