VB.Net从当前目录中读取txt文件

时间:2016-07-10 11:23:39

标签: vb.net

如何获取应用程序当前目录并从此处读取文件? 因此,应用程序与Logger.txt位于同一文件夹中,但是当我启动应用程序时,它尝试从应用程序的根文件夹中读取。 Logger.txt位于Logging / MainObject / Logger.txt中 我试图添加CurrentDirectory的东西,但它给了我错误,所以我添加了错误。

 Dim sr As New StreamReader("Logger.txt")
 Dim line As String
 line = sr.ReadToEnd()

2 个答案:

答案 0 :(得分:0)

首先,我认为你对"当前目录"之间的区别感到困惑。和#34;应用程序目录"。当前目录是由进程维护的一条信息,用于跟踪您当前正在使用的目录,因此当您在未指定完整路径的情况下引用文件时,它会知道在哪里查找该文件。应用程序目录是应用程序的EXE文件驻留在文件系统上的位置。由于从当前目录读取是一个简单的问题,即在没有提供完整路径的情况下引用文件,我假设你要做的是从应用程序的目录中读取文件(EXE文件所在的位置) )。这是代码:

Dim ApplicationDir = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location)
Dim LogfilePath = System.IO.Path.Combine(ApplicationDir, "Logger.txt")
Using sr As New System.IO.StreamReader(LogfilePath)
    sr.ReadToEnd()
End Using

答案 1 :(得分:0)

使用Application.StartupPath

Dim sr As New StreamReader(Application.StartupPath & "\Logger.txt")
Dim line As String
line = sr.ReadToEnd()