无论用户如何移动文件 (C#)

How Can I Move a File No Matter The User (C#)

我的问题是我正在尝试创建一个 Windows 表单应用程序,但我必须四处移动文件 问题是要移动文件我需要在他们的用户目录中移动,意思是

C:\Users"用户名"

我只需要知道如何找到“用户名”或如何在他们的“用户名”目录中移动文件而不必为每个人更改代码

希望你明白我的意思

您可以使用 Environment.GetFolderPath()Environment.SpecialFolder.UserProfile 获取当前用户配置文件路径,如下所示:

var userDir = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);

但请注意,这并不总是一个好主意,尤其是当您处理漫游用户配置文件时。

A roaming user works on more than one computer on a network. A roaming user's profile is kept on a server on the network and is loaded onto a system when the user logs on.

在这种情况下,Microsoft 推荐的用于存储应用程序特定数据的位置是 ApplicationData 目录,您可以像这样访问该目录:

var appData = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);