求助,如何把Currency类型的值转换为一个时间

majten 2011-06-08 01:16:09
如题,调用了一个API,返回一个 Currency 类型的值“12951969060000”,把他转换为时间应该是 “‎2011‎-0‎6‎-0‎8‎ 0‎1:11:50”

请问如何转换?
...全文
164 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
熊孩子开学喽 2011-06-09
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 veron_04 的回复:]

引用 2 楼 wallescai 的回复:
VB版 时间等于金钱

老兄最近怎么变得很活跃?呵呵
[/Quote]
听说多回帖可以减肥啊,哈哈
booksoon 2011-06-08
  • 打赏
  • 举报
回复
这个问题还不错,收藏一下~~~
majten 2011-06-08
  • 打赏
  • 举报
回复

Const rDayZeroBias As Double = 109205# ' Abs(CDbl(#01-01-1601#))
Const rMillisecondPerDay As Double = 10000000# * 60# * 60# * 24# / 10000#


忘了俩句
majten 2011-06-08
  • 打赏
  • 举报
回复
找到一个函数


Function Win32ToVbTime(ft As Currency) As Date
Dim ftl As Currency
' Call API to convert from UTC time to local time
If FileTimeToLocalFileTime(ft, ftl) Then
' Local time is nanoseconds since 01-01-1601
' In Currency that comes out as milliseconds
' Divide by milliseconds per day to get days since 1601
' Subtract days from 1601 to 1899 to get VB Date equivalent
Win32ToVbTime = CDate((ftl / rMillisecondPerDay) - rDayZeroBias)
Else
MsgBox Err.LastDllError
End If
End Function
贝隆 2011-06-08
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 chinayuppie 的回复:]
API函数FileTimeToSystemTime可以将FILETIME转换为系统时间结构SYSTEMTIME
[/Quote]
问题是这个函数也没有楼主说的这个类型啊
booksoon 2011-06-08
  • 打赏
  • 举报
回复
API函数FileTimeToSystemTime可以将FILETIME转换为系统时间结构SYSTEMTIME
majten 2011-06-08
  • 打赏
  • 举报
回复
[Quote=引用楼主 majten 的回复:]
如题,调用了一个API,返回一个 Currency 类型的值“12951969060000”,把他转换为时间应该是 “‎2011‎-0‎6‎-0‎8‎ 0‎1:11:50”

请问如何转换?
[/Quote]

使用 ,获取ftp上文件的修改时间
FtpFindFirstFile 函数说明:http://msdn.microsoft.com/en-us/library/aa384146(v=VS.85).aspx

FtpFindFirstFile 需要传入一个 WIN32_FIND_DATA, WIN32_FIND_DATA 这里包含文件修改时间
http://msdn.microsoft.com/en-us/library/aa365740


现在调用 FtpFindFirstFile 后,从WIN32_FIND_DATA.ftLastWriteTime可以返回修改时间。

因为微软的列子是个WIN32_FIND_DATA.ftLastWriteTime 是个 FILETIME 类型,我找了一下资料在vb中可以用 Currency 代替,所以就取出了 12951969060000 这么一个值

zqs0001 2011-06-08
  • 打赏
  • 举报
回复
Currency 类型与时间之间有什么规律吗?
网络菜鸟00 2011-06-08
  • 打赏
  • 举报
回复
Sat Jun 7 09:11:00 UTC+0800 2380
2380年 06月 7日 09:11:00 周六
转换了下,和LZ说的差别很大。
就不献丑了。
booksoon 2011-06-08
  • 打赏
  • 举报
回复
这个Currency 类型的值“12951969060000”是如何得来的~~~
贝隆 2011-06-08
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wallescai 的回复:]
VB版 时间等于金钱
[/Quote]
老兄最近怎么变得很活跃?呵呵
熊孩子开学喽 2011-06-08
  • 打赏
  • 举报
回复
VB版 时间等于金钱
贝隆 2011-06-08
  • 打赏
  • 举报
回复
你调用的是什么API函数?

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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