2014-09-18 1 views
0

입니다. 모든 하위 디렉토리의 목록과 각 하위 디렉토리의 파일 수는 어떻게 계산합니까?모든 하위 디렉토리와 각 파일에 대한 파일 수는

그리고 가장 중요한 것은 목록 상자가 아닌 연속 텍스트 형식이어야합니다.

예제에서는 마지막 디렉토리 만 출력합니다. (22) 등 ....

Private Sub GetDir() 
    For Each x As String In System.IO.Directory.GetDirectories("C:\ProgramFiles") 
     y = x & " : " & CStr(x.Count) 
    Next 

    Label1.Text = y 
    End Sub 

내가 연속적인 텍스트를 그래서 필요/:

어도비 : 45/어도비 미디어 플레이어 : 5/자바 어떻게하면 이런 식으로 그들 모두를 인쇄 할 수 있습니다 실제로 우편으로 보낼 수 있습니다. 그래서 나는 listbox를 사용할 수 없다.

+0

는'Y = X &가 ":"&에서는 CStr (x.Count가)'받는 현재 디렉토리에 할당 오히려 CONCATENATE보다 (문자열을 엄격한 옵션을 사용할 수 있습니까?!)'Y & = ...' – Plutonix

답변

1

은 쉽게 이름과 파일이 각 디렉토리에 대한 계산 얻을 수있는 출력과 DirectoryInfo 객체를 구축하기 위해 StringBuilder 객체를 사용할 수 있습니다.

Dim list As New StringBuilder 
For Each directory As String In IO.Directory.GetDirectories("C:\ProgramFiles") 
    Dim subDirectory As New IO.DirectoryInfo(directory) 
    list.Append(subDirectory.Name & ": " & subDirectory.GetFiles.Length & "/") 
Next 
Dim text As String = list.ToString.Remove(list.Length - 3) 
0

"프로그램 파일"에 공간을 추가해야했거나 불어 났지만 + =는 루프 문자열에 문자열을 추가해야합니다.

Private Sub GetDir() 

    Dim y As String = "" 
    For Each dir As String In System.IO.Directory.GetDirectories("C:\Program Files") 

     y += dir & " : " & CStr(dir.Count) 

    Next 


    Label1.Text = y 
End Sub 
관련 문제