如何使用JavaScript转换Evernote日期/时间?

时间:2016-06-01 21:27:54

标签: javascript c# datetime evernote

Evernote API和本地SQLite数据库使用不同的格式/类型来表示日期/时间。 我有C#函数进行转换,但我在JavaScript中需要相同的函数。

我需要两个转换功能:
1.将Evernote日期/时间转换为JavaScript日期/时间 2.将JavaScript日期/时间转换为Evernote日期/时间

有人可以帮忙吗?我对C#一无所知。 我在这里搜索了Evernote论坛,但找不到解决方案。

这与指出的问题不完全相同:
" 我将时间存储在MySQL数据库中作为Unix时间戳,并将其发送到某些JavaScript代码。我怎样才能得到它的时间?"

出于以下原因:
1.我要求双向转换,而另一个问题是只要求一种方式 2.我正在处理SQLite,而另一个问题是处理MySQL

public DateTime ConvertEvernoteDateToDateTime(long evDate)
        {
            // convert from seconds to ticks
            TimeSpan ts = new TimeSpan((evDate * 10000));
            // create a date with the standard web base of 01/01/1970
            // add the timespan difference
            DateTime date = new DateTime(1970, 1, 1).Add(ts);
            // adjust for the current timezone
            ts = TimeZone.CurrentTimeZone.GetUtcOffset(date);
            date = date.Add(ts);

            return date;
        }

        public long ConvertDateTimeToEvernoteDate(DateTime date)
        {
            // adjust for the current timezone
            date = date.ToUniversalTime();
            // get the ticks as a base for the standard web base date
            long baseOffset = new DateTime(1970, 1, 1).Ticks;
            // get the difference between the base and our date
            long evDate = date.Ticks - baseOffset;
            // convert from ticks to seconds
            evDate = evDate / 10000;

            return evDate;
        }

1 个答案:

答案 0 :(得分:0)

这是常规的UNIX时间(自1970-01-01,UTC以来的秒数)。

Javascript日期存储自相同原点以来的毫秒数,因此您可以简单地乘以1,000,然后将该数字传递给{ "id":5752034, "score":7.6, "name":"ASUS X551 15.6-inch Laptop", "categoryId":"803", "positiveAspects":[{ "id":30030525, "name":"price", "score":9.8, "frequency":139, "rank":100098 }, { "id":30028399, "name":"use", "score":9.9, "frequency":99, "rank":100099 } . . ] }