如何解决C# 如何获取 User AppData 文件夹,而不是 AppData\Roaming?
我使用下面的代码来获取用户的 AppData
文件夹 -
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)
但我得到的是"C:\Users\(users)\AppData\Roaming"
。有没有办法只得到 "C:\Users\(users)\AppData"
?
解决方法
首先,除非 Microsoft 已发布 API 来检索其位置,否则直接访问该文件夹可能不是一个好主意。这意味着无法保证此文件夹甚至会存在。
如果你出于某种原因真的想检索这个文件夹,你可能会做一些类似的事情
Directory.GetParent(
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData))
然后要验证,您还可以检索例如
Directory.GetParent(
Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData))
如果两者相同,很可能就是您要查找的文件夹。
但同样,首先质疑为什么需要这条道路的动机可能是个好主意。
,这是你要找的吗
首先从 Environment 对象中获取用户名。
string userName = Environment.UserName;
然后,使用该用户名生成路径。
string path = $"C:\\Users\\{userName}\\AppData";
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。