Tôi có một ứng dụng Android mà tôi cần phải chuyển đổi ngày hiện tại thành số giây đã trôi qua từ năm 1970.cách lấy số giây được chuyển từ năm 1970 cho một giá trị ngày tháng?
Điều tôi đang làm hiện tại là vậy.
Calendar cal = new GregorianCalendar(TimeZone.getTimeZone("GMT"));
cal.set(currentDate.get(Calendar.YEAR), month, currentDate.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
long timesince1970 = cal.getTime().getTime();
Một vấn đề khác là ứng dụng của tôi cần chạy ở Đức. Do đó cần phải chuyển đổi thời gian thành múi giờ và sau đó chuyển đổi thành số giây kể từ năm 1970.
Ở trên không cho tôi kết quả chính xác.
Vì nó xuất phát từ 'System' do' currentTimeMillis() 'thay đổi nếu người dùng đã thay đổi ngày? –
@CliffBurton: Vâng, đúng vậy. Điện thoại Android thường được thiết lập để tự động đồng bộ hóa thời gian của chúng, nhưng ngày trả lại có thể sai. Nếu bạn cần thời gian để chính xác, bạn thường sẽ cần phải thực hiện một số loại kiểm tra trực tuyến. (N.B .: như thời gian trả về là UTC, nó không bị ảnh hưởng bởi DST hoặc múi giờ, trừ khi có sai sót) –