以编程方式获取文件夹位置

时间:2016-07-13 08:16:47

标签: c# vb.net

我有这个VB代码,在调试时会得到以下位置

  

C:\ Users \ AUpadhyay \ AppData \ Roaming \ Sterling Ultra Precision \ Power   套件\ 2.7.0.0

VB代码是

AppPath = System.IO.Directory.GetParent(My.Computer.FileSystem.SpecialDirectories.CurrentUserApplicationData).ToString

我试图使用下面的C#代码到达同一目录,但输出是

  

C:\用户\ AUpadhyay \应用程序数据

C#代码是

AppPath = System.IO.Directory.GetParent(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)).ToString();

获取相同目录地址的代码行是什么?

4 个答案:

答案 0 :(得分:2)

这将为您提供Roaming Folder that is present inside AppData folder,然后其余文件夹已知,因此您可以使用Path.Combine连接它们;考虑一下代码:

string AppPath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);

string requiredPath=Path.Combine(AppPath,@"Sterling Ultra Precision\Power Suite\2.7.0.0");

答案 1 :(得分:1)

Application.UserAppDataPath将是您的解决方案。

可以从VB.NET和C#访问它,它返回:

C:\Users\[Your user name]\AppData\Roaming\[Your company name]\[Your product name]\[Your product version]

来自C#的结果:

Application.UserAppDataPath in a MessageBox

答案 2 :(得分:0)

您可以使用以下代码获取c#

中的当前目录

string AppPath = AppDomain.CurrentDomain.BaseDirectory;

答案 3 :(得分:0)

希望这会有所帮助

var fileName = Path.Combine(Environment.GetFolderPath(
    Environment.SpecialFolder.ApplicationData), "FileYouWant.foo")