Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Antihawk
1 / 1 / 0
Регистрация: 06.11.2012
Сообщений: 44
#1

Конвертировать из int в date - Программирование Android

08.06.2014, 00:51. Просмотров 558. Ответов 2
Метки нет (Все метки)

Есть 3 переменных типа int:
часы, минуты и день недели.
в таком формате:
6, 47, 2.
Нужно конвертировать из них в дату, а потом получить из даты время в миллисекундах в int.
Спасибо.

Добавлено через 1 час 6 минут
и да, забыл сказать, дату нужно ближайшую подходящую, то есть если указан вторник, до дата будет следующий вторник.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2014, 00:51     Конвертировать из int в date
Посмотрите здесь:
Android Как конвертировать в int
Не удается конвертировать int в String Android
Int и int[] в чем отличие? Android
Android Click Dialog date
Android Как конвертировать String в Button?
Как конвертировать дату из типа long? Android
Android Класс Date, как правильно задать дату?
Android В listView работает int, но не работает int[]
Depricated public Date(int year,int Month, int Day) Java
C++ Как конвертировать массив int в int?
Java ME int в date
Конвертировать div_t в int? C++ Builder

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
krapotkin
2340 / 2241 / 575
Регистрация: 14.04.2014
Сообщений: 10,768
08.06.2014, 10:01     Конвертировать из int в date #2
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
uses DateUtils;
var A, B, C:integer; dw:integer;
resDT:TDateTime;
A:=6; B:=47; C:=2;
 
dw:=DayOfTheWeek(Date);
resDT := encodeTime(A, B, 0, 0) + Date;
if dw<C then
  resDT:=resDT - dw + C 
else
  if dw > C then
    resDT := resDT + 7 - dw + C;
количество миллисекунд во времени не зависит от даты:
A*кол-во_мсек_в_часе+B*кол-во_мсек_в_минуте

Добавлено через 5 минут
Ай Ай, сорри, перепутал тему. в андроиде не так

Добавлено через 21 минуту
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int A=6;
int B=47;
int C=2;
Date d = new Date();
d.setHours(A);
d.setMinutes(B);
GregorianCalendar cl = new GregorianCalendar();
cl.setTime(d);
int dw = cl.get(Calendar.DAY_OF_WEEK);
if (dw < C) {
  cl.roll(Calendar.DATE, -dw + C);
} else
if (dw > C) {
  cl.roll(Calendar.DATE, 7 -dw + C);
}
YuraAAA
1565 / 1307 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
08.06.2014, 12:38     Конвертировать из int в date #3
Antihawk,
Java
1
2
3
4
5
6
7
public long getDateInMillis(int hours, int minutes, int dayOfWeek) {
        Calendar instance = Calendar.getInstance();
        instance.set(Calendar.HOUR_OF_DAY, hours);
        instance.set(Calendar.MINUTE, minutes);
        instance.set(Calendar.DAY_OF_WEEK, dayOfWeek);
        return instance.getTimeInMillis();
    }
Yandex
Объявления
08.06.2014, 12:38     Конвертировать из int в date
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru