在dotnet core上读取用户配置文件相关文件

时间:2019-03-07 14:42:19

标签: .net-core

如何使用与平台无关的dotnet core正确处理文件路径?即我使用的是Mac,并且尝试打开相对于我的用户个人资料的文件

var file="~/Downloads/example.zip";
var fullPath = Path.GetFullPath(file);

返回

/Users/Me/Projects/Test/Test/~/Downloads/example.zip

1 个答案:

答案 0 :(得分:2)

选项1

使用Environment.ExpandEnvironmentVariables("%HOME%")来获得~的等价物。像

var file = Environment.ExpandEnvironmentVariables("%HOME%/Downloads/example.zip");

选项2

使用Environment.GetEnvironmentVariable("HOME")

var file = Environment.GetEnvironmentVariable("HOME") + "/Downloads/example.zip");

选项3:

使用Environment.GetFolderPath(Environment.SpecialFolder.UserProfile)

var file = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile) ....