0

特定のdateTime.Exの時刻の前後10分を取得する必要があるというandroid.OnでdateTimePickerアプリを実行しています。ユーザーが「12/12/2010 5:00」を選択した場合、「12/12/2010 4:50」を 1 つの値として取得し、「12/12/2010 5:10」を 1 つの値として取得する必要があります。特定の時間から + 10 分 & -10 分?

私のコード:

String DATETIMEBEFORE ;
String DATETIMEAFTER;
...
private TimePickerDialog.OnTimeSetListener timePickerListener = new TimePickerDialog.OnTimeSetListener() {
        public void onTimeSet(TimePicker view, int selectedHour,
                int selectedMinute) {
            hour = selectedHour;
            minute = selectedMinute;

            String DATETIME = new StringBuilder()
                    // Month is 0 based, just add 1
                    .append(month + 1).append("-").append(day).append("-")
                    .append(year).append(" ").append(pad(hour)).append(":")
                    .append(pad(minute)).toString();

DATETIME が value="12/12/2010 5:00" の場合、DATETIMEBEFORE value="12/12/2010 4:50" & DATETIMEAFTER value="12/12/2010 5:10" を取得する必要があります。ありがとう。

4

2 に答える 2

1

OPコードの後に​​更新

public static String getTimeBefore10minutes(String currentDate) {

        SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy HH:mm");
        try {
            // Get calendar set to current date and time with Singapore time zone
            Calendar calendar = new GregorianCalendar(TimeZone.getTimeZone("Asia/Calcutta"));
            calendar.setTime(format.parse(currentDate));

            //Set calendar before 10 minutes
            calendar.add(Calendar.MINUTE, -10);     
            //Formatter 
            DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy HH:mm");
            formatter.setTimeZone(TimeZone.getTimeZone("Asia/Calcutta"));  
            return formatter.format(calendar.getTime());
        } catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        return null;
    }

    public static String getTimeAfter10minutes(String currentDate) {

        SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy HH:mm");
        try {
            // Get calendar set to current date and time with Singapore time zone
            Calendar calendar = new GregorianCalendar(TimeZone.getTimeZone("Asia/Calcutta"));
            calendar.setTime(format.parse(currentDate));

            //Set calendar before 10 minutes
            calendar.add(Calendar.MINUTE, 10);     
            //Formatter 
            DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy HH:mm");
            formatter.setTimeZone(TimeZone.getTimeZone("Asia/Calcutta"));  
            return formatter.format(calendar.getTime());
        } catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        return null;
    }

そして、次のように呼び出します

getTimeAfter10minutes("12/12/2010 5:00");
getTimeBefore10minutes("12/12/2010 5:00");

結果は

12/12/2010 05:10
12/12/2010 04:50

私のブログの詳細を読む日​​付範囲の計算

于 2013-07-18T05:31:42.540 に答える