如何取得FTP服务器上某文件的时间(精确到秒)?

charleysong 2003-01-15 09:37:01
我使用IFTP的控件,用LIST取回的文件,文件时间只精确到分钟,有没有办法精确到秒?请各位指点一二。
...全文
46 点赞 收藏 8
写回复
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
charleysong 2003-01-17
试了一下,不太好用,但还是表示感谢。
回复
charleysong 2003-01-16
TO: hjb8000(北极熊)

能不能给个例子,多谢!!!
回复
hjb8000 2003-01-16
用API自己写FTP功能好象可行,我没有用过控件方法
回复
charleysong 2003-01-16
高手请进!
回复
huangrenguang 2003-01-16
记住引用WinINet哟!!!
{***************************************************************
* 方 法 名 : frmMain
* 编写目的 : 获取服务器上对应文件的大小(已上传部分)
* 作 者 : 黄仁光
* 参 数 :
SendFileName:发送给服务程序的续传文件的文件名
* 结 果 : int64
* 编写日期 :2002年09月25日
****************************************************************}
function GetServerFileSize(ServerAddr,UserName,Password:String;SendFileName:String):int64;
var
hOpenHandle: HINTERNET;//InternetOpen得到
RemoteData:WIN32_FIND_DATA;//结构
FContext:Integer;
FftpHandle:HINTERNET;//连接句柄
hFindHandle :HINTERNET;//查找句柄
HighSize:DWORD;
LowSize:DWORD;
begin
hOpenHandle := InternetOpen('http://192.168.100.21/tuopu.asp', 0, nil, nil, 0);
FContext := 255;
if hOpenHandle <> nil then
begin
FftpHandle := InternetConnect(
hOpenHandle, // Handle from InternetOpen
PChar(ServerAddr),
21,
PChar(UserName),
PChar(PassWord),
Internet_Service_Ftp,
0,
FContext
);
if FftpHandle <> nil then
begin
hFindHandle := FtpFindFirstFile(
FftpHandle,
PChar(SendFileName),
RemoteData,
0,
FContext
);
if hFindHandle <> nil then
begin
//下面这些时键的具体意思你看看帮助就明白了
//信息都在WIN32_FIND_DATA结构里啦
RemoteData.ftCreationTime;
RemoteData.ftLastAccessTime;
RemoteData.ftLastWriteTime;
/////////////////////////
HighSize := (RemoteData.nFileSizeHigh)*MAXDWORD+RemoteData.nFileSizeHigh;
LowSize := RemoteData.nFileSizeLow;
Result := HighSize+LowSize;
end
else
Result := 0;
end
else
Result := 0;
end
else
Result := 0;
end;
回复
qiujsh 2003-01-16
看FTP服务器支不支持了(返回字符串中是否有秒),如果不支持,你用FTP换什么方法也实现不了
回复
charleysong 2003-01-16
推。
回复
Delphiandliu 2003-01-15
学习中
回复
发动态
发帖子
网络通信/分布式开发
创建于2007-08-02

1565

社区成员

Delphi 网络通信/分布式开发
申请成为版主
社区公告
暂无公告