2013-12-08 71 views
0

所以基本上我試圖創建一個文件管理器,而我在失敗。當我從zip/rar文件加載文件名時,我試圖找出並沒有找到答案,爲什麼我得到(Collection)。Visual Studio 2012 - 上市的收集輸出?

enter image description here

的代碼如下

Imports System.IO 

Public Class Form1 
    Private Sub modFolderButton_Click(sender As Object, e As EventArgs) Handles modFolderButton.Click 
     Dim modFolder 
     modFolder = modFolderText.Text 
     If IO.Directory.Exists(modFolder) Then 
      MsgBox("Location Successfully Set; " + modFolder, MsgBoxStyle.Information) 
     Else 
      MsgBox("Error; Invalid Location Set") 
      Exit Sub 
     End If 
    End Sub 

    Private Sub starboundButton_Click(sender As Object, e As EventArgs) Handles starboundButton.Click 
     Dim starboundFolder 
     starboundFolder = starboundFolderText.Text 
     If IO.Directory.Exists(starboundfolder) Then 
      MsgBox("Location Successfully Set; " + starboundFolder, MsgBoxStyle.Information) 
     Else 
      MsgBox("Error; Invalid Location Set") 
      Exit Sub 
     End If 
    End Sub 

    Private Sub listRefreshButton_Click(sender As Object, e As EventArgs) Handles listrRefreshButton.Click 
     Dim modFolder 
     Dim listModsDetected 
     modsDetectedList.Items.Clear() 
     modFolder = "C:\" 
     listModsDetected = My.Computer.FileSystem.GetFiles(modFolder, FileIO.SearchOption.SearchTopLevelOnly, "*.zip") 
     modsDetectedList.Items.Add("None Detected!") 
     For Each fileName As String In listModsDetected 
      modsDetectedList.Items.Remove("None Detected!") 
      modsDetectedList.Items.Add(listModsDetected) 
     Next 
    End Sub 
End Class 
+1

請在問題本身中包含您的代碼。 – SLaks

回答

0
 modsDetectedList.Items.Add(listModsDetected) 

您剛剛將集合本身​​添加到列表中。
這就是爲什麼它顯示(collection)

您可能希望將集合中的每個項目添加到列表中。
這就是For Each給你fileName

+0

感謝,似乎工作,但它現在也顯示整個迪爾一起,我正在看一個片段,刪除,但有沒有另一種方式刪除它,而無需添加一個全新的功能? http://www.freevbcode.com/ShowCode.asp?ID=5558 感謝Path.GetFileName()工作:D – user2813035

+0

您正在尋找'Path.GetFileName()'。 – SLaks

0

您要添加:

modsDetectedList.Items.Add(listModsDetected) 

埃霍的ToString是它的類型名稱。

改爲使用modsDetectedList.Items.AddRange(如果存在)或在循環中添加文件名。

+0

試圖使用AddRange,它給出了關於不正確閱讀的錯誤,並且我最終使用了文件名,只是需要了解如何刪除現在包含的Dir。 :D – user2813035