遍历ftp目录 请教一个思路:我现在想用vb获取ftp目录下的所有文件的名称如何做呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 首先获得ftp站点路径,然后调用dir函数即可: strFile = Dir(路径 & "\*.*", vbArchive) i = 1 While strFile <> "" strTmp = strTmp & "," & strFile i = i + 1 strFile = Dir WendstrTmp 里就是该路径下所有文件名(逗号隔开) sorry,如果是远程站点,这个方法可能涉及到权限问题;所读的ftp站点是本机的站点的话应该满足了。 不行,strFile总是返回空字符传我在msdn上找的:该示例使用 OpenURL 属性来检索 FTP 服务器的目录。要运行该示例,在窗体中放置一个 Internet Transfer 控件和一个 RichTextBox 控件。然后,把这段代码粘贴到声明部分。按 F5 键运行此例,并双击此窗体。Private Sub Form_DblClick() Inet1.AccessType = icUseDefault RichTextBox1.Text = Inet1.OpenURL _ (InputBox("URL", , "ftp://ftp.ncdc.noaa.gov")) 'End Sub提示错误:连接超时用webbrowser 控件可以打开,但是不响应右键,无法返回文件名,请高手指点~~~~~加分 ' 获取 FTP 当前目录内容 hFind = FtpFindFirstFile(InterConn, "/books", pData, 0, 0) ' 查找第一个文件或目录 nLastError = Err.LastDllError ' 没有错误返回0 If hFind = 0 Then If (nLastError = ERROR_NO_MORE_FILES) Then MsgBox "This directory is empty!" Else ErrorOut nLastError, "FtpFindFirstFile" End If Exit Sub End If strItem = Left(pData.cFileName, InStr(1, pData.cFileName, String(1, 0))) With MSHFlexGrid1 .Row = 1 .Col = 0 .Text = strItem '得到此文件的大小 Command4_Click MSHFlexGrid1.Col = 1 MSHFlexGrid1.Text = FtpFS End With ' 查找 FTP 目录中的下一个文件。 If hFind <> 0 Then bRet = True Do While bRet bRet = InternetFindNextFile(hFind, pData) If bRet Then strItem = Left(pData.cFileName, InStr(1, pData.cFileName, String(1, 0))) With MSHFlexGrid1 .Rows = .Rows + 1 .Row = .Rows - 1 .Col = 0 .Text = strItem '得到此文件的大小 Command4_Click .Col = 1 .Text = FtpFS End With End If Loop我是这么做的,通过函数你得写进去 急求质心区域算法 帮帮忙啊 需登录的网页 如何获取源码和POST信息 如何调用WORD并在WORD中生成一个直径10cm的圆? 请教vb程序段中下面的语句是什么意思? 水晶报表不能打开ACCESS数据库问题,请教大侠,分不高. 为什么VB6无法打开ACCESS2002的数据库? 一个api的问题 窗口事件以及其他一些事件 关于串口数据传输的导入读取问题!!! 高手指教,有关ado日期的filter问题 如何提取已注册控件用于没有安装该控件机器上作开发呢? 如何判断ftp上的某个文件夹是否存在
i = 1
While strFile <> ""
strTmp = strTmp & "," & strFile
i = i + 1
strFile = Dir
WendstrTmp 里就是该路径下所有文件名(逗号隔开)
我在msdn上找的:
该示例使用 OpenURL 属性来检索 FTP 服务器的目录。要运行该示例,在窗体中放置一个 Internet Transfer 控件和一个 RichTextBox 控件。然后,把这段代码粘贴到声明部分。按 F5 键运行此例,并双击此窗体。Private Sub Form_DblClick()
Inet1.AccessType = icUseDefault
RichTextBox1.Text = Inet1.OpenURL _
(InputBox("URL", , "ftp://ftp.ncdc.noaa.gov")) '
End Sub提示错误:连接超时
用webbrowser 控件可以打开,但是不响应右键,无法返回文件名,
请高手指点~~~~~加分
nLastError = Err.LastDllError ' 没有错误返回0
If hFind = 0 Then
If (nLastError = ERROR_NO_MORE_FILES) Then
MsgBox "This directory is empty!"
Else
ErrorOut nLastError, "FtpFindFirstFile"
End If
Exit Sub
End If
strItem = Left(pData.cFileName, InStr(1, pData.cFileName, String(1, 0)))
With MSHFlexGrid1
.Row = 1
.Col = 0
.Text = strItem
'得到此文件的大小
Command4_Click
MSHFlexGrid1.Col = 1
MSHFlexGrid1.Text = FtpFS
End With
' 查找 FTP 目录中的下一个文件。
If hFind <> 0 Then bRet = True
Do While bRet
bRet = InternetFindNextFile(hFind, pData)
If bRet Then
strItem = Left(pData.cFileName, InStr(1, pData.cFileName, String(1, 0)))
With MSHFlexGrid1
.Rows = .Rows + 1
.Row = .Rows - 1
.Col = 0
.Text = strItem
'得到此文件的大小
Command4_Click
.Col = 1
.Text = FtpFS
End With
End If
Loop我是这么做的,通过
函数你得写进去