vb 编程中,想要获取指定文件夹下的文件夹名,例如D:\X轴\下的所有文件夹的名称,并显示在textbox中

是指定的D:\X轴\下的文件夹名,希望您能帮帮我,万分谢谢!!!... 是指定的D:\X轴\下的文件夹名,希望您能帮帮我,万分谢谢!!! 展开
 我来答
zhyulily
2011-04-21 · TA获得超过260个赞
知道小有建树答主
回答量:217
采纳率:0%
帮助的人:84.7万
展开全部
' 查找指定目录下的文件夹,并显示在TextBox中,
' 需要一个TextBox控件,打开Multline属性,
' 每找到一个文件夹,便显示并换行

strPathTmp = "D:\X轴\"
strNameTmp = Dir(strPathTmp, vbDirectory)
Do While strNameTmp <> ""
If strNameTmp <> "." And strNameTmp <> ".." Then
If GetAttr(strPathTmp & strNameTmp) = vbDirectory Then
'在strPathTmp目录下找到文件夹strNameTmp
Text1.text = Text1.text & strNameTmp & Chr(13) + Chr(10)
End If
End If
strNameTmp = Dir
Loop
更多追问追答
追问
您太厉害了,谢谢啊,还有一个问题就是想引用在text里面显示的文件夹名进行计算,如何对他们进行标记,就是如果text里面显示了三个文件夹名例如100,200,300,如果想要取100这个数据的话(在另外一个窗口引用),该怎么表示呢,呵呵,麻烦你了,谢谢
追答
用TextBox做这事挺麻烦,不如你把TextBox换成ListBox,这样原来的程序就变成:
strPathTmp = "D:\X轴\"
strNameTmp = Dir(strPathTmp, vbDirectory)
Do While strNameTmp ""
If strNameTmp "." And strNameTmp ".." Then
If GetAttr(strPathTmp & strNameTmp) = vbDirectory Then
'在strPathTmp目录下找到文件夹strNameTmp
lis.AddItem strNameTmp
End If
End If
strNameTmp = Dir
Loop

这样,以后你引用名称时,可以这样引用:
lis.List(lis.ListIndex) 'lis.ListIndex是你用鼠标选择的那一行。
或者
lis.ListIndex=xx 'xx表示的是列表的索引,意思是先定位到xx这一行。
y = Val(lis.Text) '取得对应索引的列表内容,y就是你要得到的文件名。
况知慧9j
2011-04-21 · 超过67用户采纳过TA的回答
知道小有建树答主
回答量:275
采纳率:0%
帮助的人:0
展开全部
X轴是什么意思 文件夹名称吗
更多追问追答
追问
是文件夹名称,想要获取的是D:\X轴\这个文件夹下的所有文件夹名
追答
一会的功夫这么多人回答
如果说你第二个问题没人回答的话,我再回答 我不跟他们抢 O(∩_∩)O哈哈~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
oaita
2011-04-21 · TA获得超过708个赞
知道小有建树答主
回答量:669
采纳率:100%
帮助的人:805万
展开全部
Dim mypath As String
Dim myname As String
mypath = "D:\X轴\" ' 指定路径。
myname = Dir(mypath, vbDirectory) ' 找寻第一项。
Do While myname <> "" ' 开始循环。
' 跳过当前的目录及上层目录。
If myname <> "." And myname <> ".." Then
' 使用位比较来确定 MyName 代表一目录。
If (GetAttr(mypath & myname) And vbDirectory) = vbDirectory Then
'找到目录了,如果是你要的100目录则干活
if myname="100" then ' 如果它是一个目录,将其名称显示出来。
msgbox "你现在可以在另外的窗体中处理这个myname了"
end if
End If
End If
myname = Dir ' 查找下一个目录。
Loop
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
KL1112
2011-04-21 · TA获得超过532个赞
知道小有建树答主
回答量:454
采纳率:0%
帮助的人:626万
展开全部
方法一:
利用DirBox控件,但隐藏的文件夹不能获取出来
代码如下:
Private Sub Command1_Click()
Dim i As Long, s As String, sT As String
Dir1.Path = "D:\123\"
Text1 = ""
For i = 0 To Dir1.ListCount - 1
sT = Dir1.List(i)
If Right(sT, 1) = "\" Then sT = Left(sT, Len(sT) - 1)
sT = Right(sT, Len(sT) - InStrRev(sT, "\"))
s = s & sT & vbCrLf
Next i
Text1 = s
End Sub

方法二:
利用FSO(引用Microsoft Scripting Runtime),能获取到隐藏的文件夹
代码如下:
Private Sub Command2_Click()
Dim FSO As New FileSystemObject, FSOFolders As Folders, FSOFolder As Folder
Dim s As String, sT As String
Set FSOFolders = FSO.GetFolder("D:\123\").SubFolders
For Each FSOFolder In FSOFolders
sT = FSOFolder.Path
If Right(sT, 1) = "\" Then sT = Left(sT, Len(sT) - 1)
sT = Right(sT, Len(sT) - InStrRev(sT, "\"))
s = s & sT & vbCrLf
Next
Text1 = s
End Sub

方法三:
利用API...(忘记了)...你可以百度下...

方法四:
利用Dir函数...楼上有讲...
不过,楼上的不能显示隐藏的和系统的文件夹,可以修改Dir的第二个参数
可以改为: vbDirectory Or vbHidden Or vbNormal Or vbReadOnly Or vbSystem
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式