Android: как получить количество миллисекунд с 1 января 1970 года для определенной даты?

Я видел этот пост, в котором объясняется, как получить количество миллисекунд с 1970 года для ТЕКУЩЕЙ ДАТЫ:

как получить количество секунд, прошедших с 1970 года для значения даты?

Мой вопрос: как получить это значение в миллисекундах для любой даты?

Спасибо !!


person Regis_AG    schedule 04.10.2011    source источник
comment
С 1970 года (я предполагаю, что вы имеете в виду 1 января 1970 года) в каком часовом поясе? Может показаться глупым, но телефон пользователя покажет вам время в его часовом поясе, и вам нужны миллисекунды с полуночи первого января в этом часовом поясе или в GMT/UTC?   -  person Steve Bosman    schedule 04.10.2011
comment
Привет ! Я хочу, чтобы миллисекунды находились в том же часовом поясе, что и дата, введенная в качестве ввода. Допустим, это часовой пояс пользователя. Спасибо.   -  person Regis_AG    schedule 05.10.2011


Ответы (1)


Календарь c = новый Календарь();

Calendar c = Calendar.getInstance();
// year, month, day, hourOfDay, minute
c.set(1990, 7, 12, 9, 34);
long millis = c.getTimeInMillis();
person Community    schedule 04.10.2011
comment
Спасибо. У меня есть ошибка Не удается создать экземпляр типа Calendar. Вы знаете, как решить эту ошибку? Спасибо. - person Regis_AG; 04.10.2011
comment
К сожалению, это защищенный конструктор. Написал это с головы до ног. Исправил пример. - person ; 05.10.2011
comment
Спасибо !! Тем не менее, у меня есть своего рода ошибка... Когда я пишу Date d = new Date(millis); после длинного миллиса = c.getTimeInMillis(); У меня есть дата, которая смещена на один месяц по сравнению с тем, что должно быть! С датой в вашем примере возвращается: 1990/8/12, а не 1990/7/12... Как вы это объясните?? Спасибо. - person Regis_AG; 05.10.2011
comment
Значения месяца Calendar.set() варьируются от 0 (январь) до 11 (декабрь). Так что это правильная дата, мы установили здесь август, а не июль. - person ; 05.10.2011
comment
Если вы не хотите запутаться, вы можете заменить число (здесь 7) константой календарного месяца (здесь Calendar.AUGUST). Таким образом, это понятно и повышает читаемость кода. - person ; 05.10.2011