所以,基本上我已经创建了这个程序,并且它将所选文件复制到Roaming AppData文件夹中公司的命名文件夹,这并不是那么糟糕。我的意思是,现在的设置并不是那么糟糕,但我想对它有更多的控制权。
string fullFileName = item.FileName;
string fileNameWithExt = Path.GetFileName(fullFileName);
string destPath = Path.Combine(Application.UserAppDataPath, fileNameWithExt);
File.Copy(item.FileName, destPath);
在程序开始时,它会检查自定义AppData文件夹是否存在。
public void checkADfolder()
{
string folder = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
string specificFolder = Path.Combine(folder, ".program");
if (!Directory.Exists(specificFolder))
Directory.CreateDirectory(specificFolder);
}
我希望文件转到AppData文件夹.program而不是具有应用程序公司名称的文件夹。
另外,我遇到了这个问题。当用户选择一个文件,然后关闭该程序并再次打开该程序并碰巧选择相同的文件时,它会出错,因为该文件已存在。当选择相同的文件时,我需要覆盖所有其他文件。
拧紧它,我也会问这就是为什么我在这里。 我需要用户选择的文件来替换AppData文件夹中的另一个文件,并重命名用户选择的文件。
基本上。用户选择文件。文件名是“user.txt”。现在它在漫游> .program> user.txt 我需要该文件来替换文件让我们说它叫做“guest.txt”。它在漫游> .user> guest.txt 我需要将“user.txt”复制并重命名为“guest.txt”,然后替换.user文件夹中的“guest.txt”。 我希望这能很好地解释一切。
我想我会将所有内容放在一个帖子中而不是制作多个帖子。 我搜索过但似乎无法找到任何答案:/
答案 0 :(得分:0)
要覆盖文件,您只需使用此处的方法:
File.Copy Method (String, String, Boolean);
要覆盖您的其他文件,只需再次调用该函数:
File.Copy(@".\Roaming\program\user.txt", @".\Roaming\user\guest.txt", true);