VB获取SubFolder名称并将其保存到文本文件

时间:2015-12-11 11:31:27

标签: vb.net subdirectory

我想在我的文本文件中列出子文件夹名称。 我不想看到SubFolder的路径。 我终于有办法只显示我的VS控制台了。但是,如果我尝试将其保存到我的txt文件,它仍然只写第一行,即使我使用For。请帮我! 这是写入控制台的代码

Dim di As New IO.DirectoryInfo(startPath)
        Dim Drs() As IO.DirectoryInfo = di.GetDirectories()
        For Each dr As IO.DirectoryInfo In Drs
            Console.WriteLine(dr.Name)
        Next

这是我试图在txt文件上写它的代码。它只写1行

For Each Dir As String In Directory.GetDirectories(startPath)
            My.Computer.FileSystem.WriteAllText("C:\Test.txt", Dir, False)
        Next

预期输出

SubFolder1
SubFolder2
SubFolder3
SubFolder4
SubFolder5

在txt文件中就像这样

1 个答案:

答案 0 :(得分:1)

您使用了错误的方法,WriteAllText总是覆盖整个文件,您想要追加一个新行。您可以使用File.AppendAllText

For Each Dir As String In Directory.GetDirectories(startPath)
    System.IO.File.AppendAllText("C:\Test.txt", Dir)
Next

另一个选项,使用StreamWriter,它有一个constructor that takes a Boolean来附加文字:

Using writer As New System.IO.StreamWriter(startPath, True)
    For Each Dir As String In Directory.GetDirectories(startPath)
        writer.WriteLine(Dir)
    Next
End Using