我很难显示特定时区的时间。我有一个类似于应用程序的电视指南,可以从服务器获取Unix纪元时间程序的所有开始时间,我希望时间显示在荷兰的应用程序用户所在的时间以及任何Android设备。经过一番研究后,我认为它会像这样工作:
new SimpleDateFormat("HH:mm", new Locale("nl", "NL")).format(new Date(time*1000));
其中时间是纪元时间,例如1370497200
这是荷兰的07:40,但它似乎只需要你正在使用的设备的时区。在三星Galaxy Tab 2.0上测试它
我做错了什么?
相关问题: 根据{{3}}我不能假设nl_NL Locale在每台设备上都可用,我该如何解决?
旁注:http://developer.android.com/reference/java/util/Locale.html是一种快速查看某个纪元时间的好方法。
答案 0 :(得分:9)
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("HH:mm", new Locale("nl", "NL"));
simpleDateFormat.setTimeZone(TimeZone.getTimeZone("Europe/Amsterdam"));
一个相关的问题:根据http://developer.android.com/reference/java/util/Locale.html我不能假设nl_NL Locale在每台设备上都可用,我该如何解决?
你在这里谈论用户界面吗?如果是这样,那么你无法解决它。只有Google和/或OEM可以向系统添加新的区域设置。