在 WPF C# 中复制和重命名文件

本文关键字:重命名 文件 复制 WPF | 更新日期: 2023-09-27 18:32:56

我在WPF应用程序中使用System.Windows.Forms.OpenFileDialog来选择图像。当用户选择图像时,我在文本框中显示所选文件的文件名,如下所示。

            OpenFileDialog fileDialog = new OpenFileDialog();
            fileDialog.Title = "Select image";
            fileDialog.InitialDirectory = "";
            fileDialog.Filter = "Image Files (*.gif,*.jpg,*.jpeg,*.bmp,*.png)|*.gif;*.jpg;*.jpeg;*.bmp;*.png";
            fileDialog.FilterIndex = 1;
            fileDialog.RestoreDirectory = true;
            if (fileDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                txtImagePath.Text = fileDialog.FileName;
            }

我的应用程序中有一个Save按钮。当用户单击此按钮时,我需要将此文件重命名为另一个名称并将其复制到硬盘驱动器中的另一个目录。

我怎样才能做到这一点?

在 WPF C# 中复制和重命名文件

使用 File.Copy 和 Path 类中的方法来提取文件的相关部分

string newDir = @"D:'temp";
string curFile = Path.GetFileName(txtImagePath.Text);
string newPathToFile = Path.Combine(newDir, curFile);
File.Copy(txtImagePath.Text, newPathToFile);

现在使用 File.Move 对当前目录进行重命名操作

string curDir = Path.GetDirectoryName(textImagePath.Text);
File.Move(txtImagePath.Text, Path.Combine(curDir, "NewNameForFile.txt"));

可以改进此代码,引入一些错误处理

如果您想使用新名称直接复制新目录中的旧文件,那么您可以简单地编写

string newPathToFile = @"D:'temp'NewNameForFile.txt";
File.Copy(txtImagePath.Text, newPathToFile);

,然后在当前目录上进行重命名。

如何使用: System.IO.File.Copy

或者,您可以使用processInfo启动批处理文件

您可以使用

File.Copy .以下是详细信息:http://msdn.microsoft.com/en-us/library/c6cfw35a.aspx。它获取源文件并将其复制到目标,可能使用新名称。