首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将日期转换为MilliSeconds时面临的问题

将日期转换为MilliSeconds时面临的问题
EN

Stack Overflow用户
提问于 2010-11-26 14:19:24
回答 5查看 2.6K关注 0票数 1

在我的Android应用程序中,我试图将日期/时间转换为毫秒,检查以下代码:

代码语言:javascript
复制
public long Date_to_MilliSeconds(int day, int month, int year, int hour, int minute)
{

       Calendar c = Calendar.getInstance();
       c.setTimeZone(TimeZone.getTimeZone("UTC"));
       c.set(year, month, day, hour, minute, 00);

        return c.getTimeInMillis();

}

问题:I将于2010年11月22日19:49(即5小时后)获得1290455340800(11月22日14:49:00 )。

FYI, I am Currently in Indian TimeZone, but application can be executed from any country. so How do i exact Convert the date/time into the Milliseconds?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-11-26 14:26:20

这条线

代码语言:javascript
复制
c.setTimeZone(TimeZone.getTimeZone("UTC"));

很可能是引起问题的原因。不需要设置TimeZone,因为使用了当前的默认设置。

票数 1
EN

Stack Overflow用户

发布于 2010-11-26 14:25:17

我猜你是在给Date_to_MilliSeconds(22, 10, 2010, 19, 49)打电话。您的代码显式地使用UTC,因此它将把传递给UTC的任何内容作为UTC处理。

就像你的previous question (这让我很想把它作为一个副本来结束),你到底想做什么还不清楚。

如果要为方法提供本地时间,则需要指定本地时区。如果您需要在用户的时区中使用本地时间,请尝试将时区设置为TimeZone.getDefault() --尽管我希望这是默认的。如果您想为您的方法提供UTC时间,您需要指定一个UTC时区(正如您在这里)。

你到底想做什么?

票数 1
EN

Stack Overflow用户

发布于 2010-11-26 14:25:40

在这段代码中,您将得到从01/01/1970 00:00到11月22日19:49:00 EST 2010在UTC时区的时区的毫秒数。你为什么要把时区设置为UTC?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4286040

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档