标题
C里面的time_t怎么对应到java的类型,C和java都熟的进 [zt]
clq
浏览(0) +
2009-09-05 22:08:17 发表
编辑
关键字:
C里面的time_t怎么对应到java的类型,C和java都熟的进 [zt]
楼主pateric(pateric)2005-03-04 09:54:06 在 Java / J2SE / 基础类 提问
C里面的一个time_t是个long,大部分编译器是4位
java里的long是个8位的。
怎么能在java里把C传出来的一个time_t(即long)值转为时间呢? 问题点数:20、回复次数:8Top
1 楼irvine007(┣━┫Rvine)回复于 2005-03-04 10:43:52 得分 5
可以通过year, month, day, hour ....
来传递啊。Top
2 楼pateric(pateric)回复于 2005-03-04 11:21:46 得分 0
那个我知道是可以的,
不过现在的问题是C那边传出来的已经固定死了是一个time_t
还有什么办法可以在我这边用java把他解释过来?Top
3 楼eureka0891(迷茫中...)回复于 2005-03-04 11:28:39 得分 5
...你把他传过来的值转一下,转成date或者Calander不就行了,
这样更方便,而且功能也更强大,
你为什么一定要用long来表示?Top
4 楼pateric(pateric)回复于 2005-03-04 11:55:36 得分 0
这样说吧
他那边传出一个值是 1109908431 (表示的时间是Fri Mar 04 11:53:51 2005)
我怎么把这个1109908431 转成时间?Top
5 楼zjpangxie(专用马甲)回复于 2005-03-04 12:02:58 得分 10
GregorianCalendar gc = new GregorianCalendar();
gc.setTimeInMillis(time_t);Top
6 楼pateric(pateric)回复于 2005-03-04 12:21:20 得分 0
to zjpangxie(本命年,别惹我)
好像是不对的,
System.out.println(gc.getTime());
显示时间:Wed Jan 14 04:18:20 CST 1970
已经不是原来的 Fri Mar 04 11:53:51 2005
这应该就是c的4位整形和java的8位整形引起的吧?Top
7 楼zjpangxie(专用马甲)回复于 2005-03-04 13:13:00 得分 0
我只是指出应该用的方法
setTimeInMillis的参数是1970年开始到现在的毫秒数,所以你取得time_t后要先乘以1000再传进去Top
8 楼pateric(pateric)回复于 2005-03-04 13:50:43 得分 0
对了,谢谢楼上的
NEWBT官方QQ群1: 276678893
可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
验证问题说明申请入群原因即可.