黑马程序员技术交流社区

标题: 关于Date类 [打印本页]

作者: 曹文涛    时间: 2011-9-3 13:51
标题: 关于Date类
Input类:[code=java]import java.io.* ;
import java.util.* ;
import java.text.* ;
public class InputData{
        BufferedReader buf = null;
        public InputData(){
                this.buf = new BufferedReader(new InputStreamReader(System.in));
        }
        private String getString(String info){
                String temp = null;
                System.out.print(info);
                try
                {
                        temp = this.buf.readLine();
                }
                catch (IOException e)
                {
                        e.printStackTrace();
                }
                return temp;
        }
        public int getInt(String info,String err){
                int temp = 0 ;
                boolean flag = true ;
                String str = null ;
                while (flag){
                        str = this.getString(info);
                        if(str.matches("^\\d+$")){
                                temp = Integer.parseInt(str);
                                flag = false;
                        }else{
                                System.out.println(err);
                        }
                }
                return temp;
        }
        public Date getDate(String info,String err){
                Date temp = null ;
                boolean flag = true ;
                String str = null ;
                while (flag){
                        str = this.getString(info);
                        if(str.matches("^\\d{4}-\\d{2}-\\d{2}$")){
                                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
                                try{
                                        temp = sdf.parse(str);                //解析字符串的文本,生成 Date。将字符转为日期
                                }catch(Exception e){
                                        e.printStackTrace();
                                }
                                flag = false;
                        }else{
                                System.out.println(err);
                        }
                }
                return temp;
        }
        public float getFloat(String info,String err){
                float temp = 0 ;
                boolean flag = true ;
                String str = null ;
                while (flag){
                        str = this.getString(info);
                        if(str.matches("^\\d+.?\\d+$")){
                                temp = Float.parseFloat(str);
                                flag = false;
                        }else{
                                System.out.println(err);
                        }
                }
                return temp;
        }
}[/code]主类完成键盘输入日期按yyyy-MM-dd格 但最后也想按此格式输出 第10句应该怎么写 我这样写 提示找不到符号[code=java]import java.io.* ;
import java.text.* ;
import java.util.* ;
public class ExecDemo03{
        public static void main(String args[]){
                Date str = null ;
                SimpleDateFormat dft = new SimpleDateFormat("yyyy-MM-dd");
                InputData Input = new InputData();
                str = Input.getDate("请输入日期,格式为yyyy-mm-dd:","输入错误,请重新输入!");
                System.out.print("输入的日期为:" + dft.format.(str));
        }
}[/code]
作者: 匿名    时间: 2011-9-3 15:42
dft.format.(str)         //没时间帮你做实验了,没这种写法把,format方法也不是这么用的吧
作者: 匿名    时间: 2011-9-3 15:44
标题: 回复 楼主 的帖子
dft.format.(str)这里多了一个点,改为dft.format(str)就好了
作者: 匿名    时间: 2011-9-3 17:10
需要修改两处:
1:将public class InputData中的public 去掉;
2:将dft.format.(str)改为dft.format(str);
运行结果如下:
请输入日期,格式为yyyy-mm-dd:2011-02-28
输入的日期为:2011-02-28
作者: 匿名    时间: 2011-9-3 20:11
谢谢 还真是多个点 没点了 就OK了
作者: 匿名    时间: 2011-9-3 23:03
中午大概看了SimpleDateFormat
format(Date date, StringBuffer toAppendTo, FieldPosition pos)
以为你可能用错了
作者: 匿名    时间: 2011-9-3 23:07
刚才看了下原来format(str)是调用父类父类的方法
java.lang.Object
  j[color=Red]ava.text.Format[/color]         [color=Green]   //format(Object obj)[/color]
      java.text.DateFormat
          java.text.SimpleDateFormat
刚才不小按了enter+ctrl,结果一条回复成两条了




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