带有文件夹路径的VB.net返回字符串

带有文件夹路径的VB.net返回字符串,vb.net,file,filepath,Vb.net,File,Filepath,我的程序需要读取软件供应商发送给我的XML文件才能完成一个过程。问题是我无法告诉程序文件的位置 当我发布程序并安装程序时,它会在每次安装时生成一个随机文件夹 位置相同的文件夹名称总是不同的 C:\Users\Ray\AppData\Local\Apps\2.0\6znvvvg8v.C6O\0MELQPL9.LCB\lol-…tion_531c8308fa0ff83d_0001.0000_5a2aee0cd0a667c1 我已经想出了如何让文件夹显示这样做 Dim resourcePath As

我的程序需要读取软件供应商发送给我的XML文件才能完成一个过程。问题是我无法告诉程序文件的位置

当我发布程序并安装程序时,它会在每次安装时生成一个随机文件夹 位置相同的文件夹名称总是不同的

C:\Users\Ray\AppData\Local\Apps\2.0\6znvvvg8v.C6O\0MELQPL9.LCB\lol-…tion_531c8308fa0ff83d_0001.0000_5a2aee0cd0a667c1

我已经想出了如何让文件夹显示这样做

Dim resourcePath As String = _
    System.IO.Path.GetFullPath(My.Resources.ResourceManager.BaseName)
Dim rIndex As Integer = resourcePath.LastIndexOf("\")
resourcePath = resourcePath.Substring(0, rIndex)
Dim filePath As String = System.IO.Path.Combine(resourcePath, "Client.xml")
但是程序创建了第二个文件夹,将XML和图标文件放在随机生成的文件夹中,但放在同一个目录中

如何让程序在该文件夹中查找xml

请帮帮我

Ray

您可以这样做:

Dim query = _
    From d In System.IO.Directory.GetDirectories(resourcePath)
    Let f = New FileInfo(System.IO.Path.Combine(d, "Client.xml"))
    Where f.Exists
    select f.FullName

Dim filePath = query.FirstOrDefault()

按筛选器获取所有文件的列表

    lblPaymentMode.Location = New Point(lblDate.Right - lblPaymentMode.Width, lblPaymentMode.Location.Y)
    Dim mFiles() As String = Directory.GetFiles("Path of folder", "*.xml", SearchOption.AllDirectories)
    For i As Integer = 0 To mFiles.Count - 1
        Debug.Print(mFiles(i)) 'print name and path of of each file
    Next