C#.NET文件复制目录路径
本文关键字:路径 复制 NET 文件 | 更新日期: 2023-09-27 18:21:45
首先将先决条件与这个问题结合起来。我不是母语人士,我今天开始学习C#时几乎没有任何编程知识,我想编写windows窗体程序,将我随程序包含的文件(图形资产)复制到另一个程序目录中的某些文件夹中(更准确地说,我想点击一个按钮修改图形资产,然后能够将其更改回)。我做了我的研究,我知道我应该使用File.Copy方法我只对我发现的代码有一个问题:
static void Main()
{
string fileName = "test.txt";
**string sourcePath = @"C:'Users'Public'TestFolder";
string targetPath = @"C:'Users'Public'TestFolder'SubDir";**
// Use Path class to manipulate file and directory paths.
string sourceFile = System.IO.Path.Combine(sourcePath, fileName);
string destFile = System.IO.Path.Combine(targetPath, fileName);
我知道这不是完整的代码,但这是我想问的问题。我可以这样定义sourcePath和targetPath吗?例如:"./folder/folder2/"?基本上,我希望我的程序假设它在另一个软件的"正确目录"中,我不想指定该目录的整个路径。换句话说,我的程序知道它当前在哪个目录中吗?如果不知道,我如何让它知道?我希望我的措辞正确。谢谢你的帮助。
您可以为I/O操作提供一个相对路径,默认路径是Environment.CurrentDirectoy
值,这将是Windows Forms可执行文件的工作目录。
请注意,路径中不需要./
起点,File.Copy("FileA.txt", "FileA_1.txt")
将在Environment.CurrentDirectory
中查找这些位置。
为了确保您引用的是应用程序的路径,您可以使用以下命令:
string exePath = System.IO.Path.GetDirectoryName(
System.Reflection.Assembly.GetEntryAssembly().Location);
或AppDomain.CurrentDomain.BaseDirectory
请记住验证您引用的目录是否存在,否则您可能会得到DirectoryNotFoundException