如何将DatePicker日期与日历日期进行比较

时间:2012-10-05 12:20:49

标签: android date calendar format

我希望这是一个简单的问题。 如何将输入DatePicker的日期与当前日历日期进行比较?

要解释一下,如果我将DatePicker日期存储为字符串,我怎么能将它与android系统日历上的当前日期进行比较?

    protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.dpresult);

textView1 = (TextView)findViewById(R.id.textView1);

button1 = (Button)findViewById(R.id.button1);
button1.setOnClickListener(new OnClickListener(){

public void onClick(View v){         

   Intent intent = new Intent(datePickerResult.this, calander.class);

    startActivity(intent);
}
});

Bundle extras = getIntent().getExtras(); 

year = extras.getInt("year"); 
day = extras.getInt("day"); 
month = extras.getInt("month");

textView1.setText(day+"");

} }

3 个答案:

答案 0 :(得分:3)

例如,您从datepicker获得日期字符串,然后

String sDate = "05-10-2012"; // suppose you create this type of date as string then

SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");

Date date = sdf.parse(sDate);

Calendar c = Calendar.getInstance();

c.getTime().compareTo(date);

取决于你的字符串或你如何获得?您可以从datepicker单独获取所有内容,然后直接在日历实例中设置

Calendar my = Calendar.getInstance();
my.set(year, month, day);

现在比较

my.compareTo(Calendar.getInstance());

答案 1 :(得分:2)

您可以将字符串转换为日期,请参阅this

并尝试此compareTo

date1.compareTo(date2);

答案 2 :(得分:0)

在此处阅读有关日期的教程:http://www.mkyong.com/android/android-date-picker-example/

以及关于类似案例的SO帖子:How to match or compare a date string with the date stored in sqlite in android?

如果这些都没有帮助,那么发布一些代码,我将编辑我的答案:)