See in this image the schedule meeting is highlighted now this is for India timezone now if i open the same calendar in USA timezone the schedule should get changed according to there time zone so the calendar view should also be changed.我需要根据时区更改日历视图,例如,如果我在印度,我会在下午3-4点安排会议,所以当我们在印度时会显示日历但是如果我在美国或巴黎,我在下午3-4点安排的会议将以不同的方式显示在他们的日历视图中。
目前我有这段代码
final Date date = new Date();
final DateFormat formatter = new SimpleDateFormat("MM/dd/yyyy hh:mm a");
formatter.setTimeZone(TimeZone.getTimeZone(timezone));
currentstartDate = formatter.format(date);
currentendDate = formatter.format(date);
我从其他bean获取时区,并在调试时检查它是否已经检查
答案 0 :(得分:1)
您尝试过使用SimpleDateFormat吗?
SimpleDateFormat isoFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
isoFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
此处填写完整代码: 包装一般;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimeZone;
public class DateTimeTZ {
public static void main(String[] args) throws ParseException {
SimpleDateFormat isoFormat = new SimpleDateFormat("MM/dd/yyyy hh:mm a");
Date date1 = isoFormat.parse("03/01/2016 09:01 AM");
isoFormat.setTimeZone(TimeZone.getTimeZone("Asia/Mumbai"));
isoFormat.applyPattern("dd MMM yyyy HH:mm:ss z");
System.out.println("Current Date and Time in IST time zone: " + isoFormat.format(date1));
isoFormat.setTimeZone(TimeZone.getTimeZone("Asia/Singapore"));
isoFormat.applyPattern("dd MMM yyyy HH:mm:ss z");
System.out.println("Current Date and Time in SGT time zone: " + isoFormat.format(date1));
isoFormat.setTimeZone(TimeZone.getTimeZone("Asia/Tokyo"));
isoFormat.applyPattern("dd MMM yyyy HH:mm:ss z");
System.out.println("Current Date and Time in JST time zone: " + isoFormat.format(date1));
}
}
输出:
IST时区的当前日期和时间:2016年3月1日03:31:00 GMT
SGT时区的当前日期和时间:2016年3月1日11:31:00 SGT
JST时区的当前日期和时间:2016年3月1日12:31:00 JST