20. maj 2004 - 20:27Der er
21 kommentarer og 1 løsning
filer med mere
Jeg mangler noget kode til at kunne løbe f.eks c: igennem for dirs og filer. Til at starte med skal den bare tælle antal dirs og filer...
Men jeg bliver sindsyg, for jeg havde lige lavet noget der virkede og så døde min disk, så skal jeg straarte igen, og jeg magter det ikke, så hvis der er nogle der hurtig kan give mig noget kode ville jeg blive *-glad...
Module Main Sub Main() Console.WriteLine(total("C:\WINNT")) End Sub Function total(dir As String) As Integer Dim res As Integer = 0 Dim i As Integer Dim d As DirectoryInfo = new DirectoryInfo(dir) Dim allf As FileInfo() = d.GetFiles() For i = 0 To allf.Length - 1 res = res + allf(i).Length Next Dim alld As DirectoryInfo() = d.GetDirectories() For i = 0 To alld.Length - 1 res = res + total(alld(i).FullName) Next total = res End Function End Module
Public Shared Sub lookup(ByVal dir As String) Dim files As String() = Directory.GetFiles(dir) For Each f As String In files Console.WriteLine(f) Next Dim dirs As String() = Directory.GetDirectories(dir) For Each d As String In dirs lookup(d) Next End Sub
Public Shared Sub Main(ByVal args As String()) lookup("C:\WINNT") End Sub End Class
okay... Men det er mere antal filer ialt og antal dir's...
Jeg bruger denne kode: --- Den første udgave i VB.NET:
Imports System Imports System.IO
Class MainClass
Public Shared Sub lookup(ByVal dir As String) Dim files As String() = Directory.GetFiles(dir) For Each f As String In files Console.WriteLine(f) Next Dim dirs As String() = Directory.GetDirectories(dir) For Each d As String In dirs lookup(d) Next End Sub
Public Shared Sub Main(ByVal args As String()) lookup("C:\WINNT") End Sub End Class ---
Jeg kan sku ikke finde ud af det... måske jeg bare er træt....
Class MainClass Public Shared Function count(ByVal dir As String) As Integer Dim res As Integer = Directory.GetFiles(dir).Length Dim dirs As String() = Directory.GetDirectories(dir) For Each d As String In dirs res = res + count(d) Next count = res End Function
Public Shared Sub Main(ByVal args As String()) Console.WriteLine(count("C:\WINNT")) End Sub End Class
Og så skal jeg have en variabel med fil størrelsen i en variabel for hver fil... altså bare en jeg kan checke størrelsen på og så gå vidre ? er du med?
Class MainClass Public Shared Function count(ByVal dir As String) As Integer Dim res As Integer = 3 Dim dirs As String() = Directory.GetDirectories(dir) For Each d As String In dirs res = res + count(d) Next count = res End Function
Public Shared Sub Main(ByVal args As String()) Console.WriteLine(count("C:\WINNT") - 1) End Sub End Class
giver samme antal som dir/s/a
3 = sig selv + . + ..
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.