黑马程序员技术交流社区

标题: 关于时间类问题,请高手帮忙看看?.. [打印本页]

作者: smile_joe    时间: 2013-4-20 21:39
标题: 关于时间类问题,请高手帮忙看看?..
本帖最后由 smile_joe 于 2013-4-22 21:01 编辑

import java.sql.Date;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Scanner;
//import java.text.*;

public class Test4 {

        /**
         * @param args
         */
        public static void main(String[] args) {
               
                method();
        }
        public  static void method() {
               
                Scanner sc=new Scanner(System.in);//键盘输入
                System.out.println("請輸入一個身份證號碼");
                String s=sc.nextLine();
                //验证长度
                if (s.length()!=18) {//符合条件直接结束
                        System.out.println("不合法");
                        return;
                }else System.out.println("合法");
                String s1=s.substring(6, 14);
                SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");//格式

                Date d=null;
                try {
                        d = (Date)sdf.parse(s1);
                } catch (ParseException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                } // 将年月日分析成日期

                Calendar c = Calendar.getInstance();// 表示当前时间

                long l = c.getTimeInMillis() - d.getTime(); // 求两个日期之间相差的毫秒值

                System.out.println(l / (24 * 60 * 60 * 1000));
        }

}
//编译通过,运行报错:类型转化异常,32行错误.
//sdf.parse(字符串)返回的不就是Date吗?但是eclipse一直提示我加(Date)强转?

作者: xiaoHei    时间: 2013-4-20 23:53
亲爱的同学,你的Date类的包,导错了,是java.util下的,不是java.sql下的
作者: 曹睿翔    时间: 2013-4-22 06:25
如果问题未解决,请继续追问,如果问题解决了,请将问题分类改为“已解决”,谢谢




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2