31. januar 2005 - 00:09Der er
12 kommentarer og 1 løsning
sort fileinfo
Hejsa
Jeg har lavet en list over en bestemt typer filer i en mappe. Jeg vil nu gerne have sorteret listen i alfabetisk rækkefølge, hvordan gør jeg det?
Her er lidt af den kode jeg bruger:
Dim pk3files() As FileInfo = dirinfo.GetFiles
Dim filelist(pk3files.Length - 1) As filesinfo
Dim pk3file As FileInfo, index As Integer For Each pk3file In pk3files Dim pk3info As New filesinfo() pk3info.name = pk3file.Name pk3info.filesize = pk3file.Length pk3info.filedate = pk3file.LastWriteTime filelist(index) = pk3info index += 1 Next
Imports System Imports System.Collections Imports System.IO
Class TestClass Public Shared Sub Main(ByVal args As String()) Dim di As DirectoryInfo = New DirectoryInfo("C:\") Dim fi As FileInfo() = di.GetFiles Dim i As Integer For i = 0 To (fi.Length - 1) Console.WriteLine(fi(i).Name) Next Array.Sort(fi, New FileInfoComparer) For i = 0 To (fi.Length - 1) Console.WriteLine(fi(i).Name) Next End Sub End Class
Public Class FileInfoComparer Implements IComparer Public Function Compare(ByVal x As Object, ByVal y As Object) As Integer Implements IComparer.Compare Return String.Compare(CType(x, FileInfo).Name, CType(y, FileInfo).Name) End Function End Class
Jeg er lige ved at prøve det. Med hensyn til at den selv skulle sortere så ja de første gange jeg prøvede stod de rigtigt, men da jeg slettede en fil og satte den tilbage i mappen igen, så kom den lige pludselig sidst.
ja, forstår det ikke helt, jeg kigger lige lidt mere og vender tilbage i eftermiddag, tak for hjælpen indtil videre, der skal nok komme point din vej :)
Hmm det ser ud til at virke nu. Slettede alt kode og begyndte for fra, og den virker uden den sorterig du skrev. Så du har ret i den gør det på filnavn, underligt det ikke virkede før. Tak for hjælpen :)
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.