c:\mp3目录有N多MP3文件,如何将这些文件按时间顺序升列表,最新时间在上面list.txt内容如下,
ASDFG.MP3
ADDFG.MP3
ASFFG.MP3
ASHFG.MP3

解决方案 »

  1.   

    如果是最后修改时间,就比较简单。使用 3 个 ListBox 控件,其中 List2 ,List3 可以设置成不可见。藏在 List1 后面或 List2.Visible = False 均可。
    此外,关键的一点,在设计界面上将 List2 的 Sorted 属性设置为 True。  Dim strFile As String, strDateTime As String, i As Long
        
        List1.Clear
        List2.Clear
        List3.Clear
        
        strFile = Dir("c:\mp3\*.mp3")
        Do Until strFile = ""
            strDateTime = Format(FileDateTime("c:\mp3\" & strFile), "yyyy-mm-dd HH-nn-ss")
            List2.AddItem strDateTime
            List3.AddItem strFile, List2.NewIndex
            strFile = Dir()
        Loop
        
        For i = List3.ListCount - 1 To 0 Step -1
            List1.AddItem List3.List(i)
        Next i
      

  2.   

    Shell “cmd /c dir /a-d /b /od c:\mp3\*.mp3 >d:\mp3list.txt”,vbHide
    '然后读文件d:\mp3list.txt的内容。C:\>dir /?
    显示目录中的文件和子目录列表。DIR [drive:][path][filename] [/A[[:]attributes]] [/B] [/C] [/D] [/L] [/N]
      [/O[[:]sortorder]] [/P] [/Q] [/S] [/T[[:]timefield]] [/W] [/X] [/4]  [drive:][path][filename]
                  指定要列出的驱动器、目录和/或文件。  /A          显示具有指定属性的文件。
      attributes   D  目录                R  只读文件
                   H  隐藏文件            A  准备存档的文件
                   S  系统文件            -  表示“否”的前缀
      /B          使用空格式(没有标题信息或摘要)。
      /C          在文件大小中显示千位数分隔符。这是默认值。用 /-C 来
                  禁用分隔符显示。
      /D          跟宽式相同,但文件是按栏分类列出的。
      /L          用小写。
      /N          新的长列表格式,其中文件名在最右边。
      /O          用分类顺序列出文件。
      sortorder    N  按名称(字母顺序)     S  按大小(从小到大)
                   E  按扩展名(字母顺序)   D  按日期/时间(从先到后)
                   G  组目录优先           -  反转顺序的前缀
      /P          在每个信息屏幕后暂停。
      /Q          显示文件所有者。
      /S          显示指定目录和所有子目录中的文件。
      /T          控制显示或用来分类的时间字符域。
      timefield   C  创建时间
                  A  上次访问时间
                  W  上次写入的时间
      /W          用宽列表格式。
      /X          显示为非 8.3 文件名产生的短名称。格式是 /N 的格式,
                  短名称插在长名称前面。如果没有短名称,在其位置则
                  显示空白。
      /4          用四位数字显示年可以在 DIRCMD 环境变量中预先设定开关。通过添加前缀 - (破折号)
    来替代预先设定的开关。例如,/-W。