mongo的日期转化

ouyang4683 2013-07-03 09:46:37
mongo自动把它库内的数据读出转成json就变成 "2013-06-09T05:25:25Z"
T Z 是时区么?

变成本地时间,是直接把T Z去掉就行?
还是要转化?
怎么转?

...全文
457 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
juxugongzi 2013-10-24
  • 打赏
  • 举报
回复
T和Z只是分隔符,MongoDB存的是GMT时间,会自动转换本地时间,数据在读取出来的时候需要本地化一下。.NET 的话可以直接 ToLocalTime() 一下,其它语言也有类似的方法。
kenticny 2013-08-02
  • 打赏
  • 举报
回复
mongodb里面的日期是0时区的,也就是比我们的北京时间要提前8个小时,所以你要直接字符串替换的话肯定是不可行的,如果你的后台是使用Java写的,那么mongo的日期对象对应的就是Java中的Date对象,所以你可以在Java中使用Calendar类来读取日期时间等内容,.Net应该也是对应的DateTime对象吧,这个不是很熟悉,所以不确定~~
可乐罐 2013-08-02
  • 打赏
  • 举报
回复
mongodb提供的shell里那个带T Z的时间是UTC时间,也就是比北京时间早8个小时。 不过,如果用官方提供的Java SDK,时间类型会自动转换成本地时间。 相信C#的SDK也是这么处理的
ouyang4683 2013-07-03
  • 打赏
  • 举报
回复
。。。没看懂 能理解成 "2013-06-09T05:25:25Z" 已经是本地时间了,只要把 T Z 去掉就行 ? 同样的读取方法myCollection.FindAs<T>(query) 结果绑带到C# this.dataGridView1.DataSource 时,显示的就是正常日期 没看到有什么转化过程, this.dataGridView1.DataSource 是怎么把它变成json的?
rucypli 2013-07-03
  • 打赏
  • 举报
回复
9、 日期 日期类型是从标准纪元(公元1年)开始的始的毫秒数,不存储时区,如:{“one”:new Date()} ,注意,如果只使用Date()【没有new】,则使用了JS本身自带的时间类型,包含了时区,如果在相同结构的文档使用了不一样的时间值,则可能会造成数据管理上不一致;

1,798

社区成员

发帖
与我相关
我的任务
社区描述
MongoDB相关内容讨论区
社区管理员
  • MongoDB社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧