Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将文件从列表框复制到新文件夹_C# - Fatal编程技术网

C# 将文件从列表框复制到新文件夹

C# 将文件从列表框复制到新文件夹,c#,C#,我正在尝试将一个文件从D:\Local\u temp处理到另一个文件夹,该文件夹位于D:\Newfolder“中,该文件夹基于列表框中显示的文件,但我遇到一个无法解决的错误。 我正在使用以下代码: DirectoryInfo dinfo = new DirectoryInfo(@"D:\Local_temp"); FileInfo[] files = dinfo.GetFiles("*.msg"); DateTime dt; if (DateTime.TryParse(this.TextBox

我正在尝试将一个文件从D:\Local\u temp处理到另一个文件夹,该文件夹位于D:\Newfolder“中,该文件夹基于列表框中显示的文件,但我遇到一个无法解决的错误。 我正在使用以下代码:

DirectoryInfo dinfo = new DirectoryInfo(@"D:\Local_temp");
FileInfo[] files = dinfo.GetFiles("*.msg");

DateTime dt;
if (DateTime.TryParse(this.TextBox1.Text, out dt))
{

    files.Where(x => File.GetCreationTime(x.FullName).Date == dt.Date).ToList().ForEach(x => this.ListBox1.Items.Add(x.Name));

    foreach (var file in Directory.GetFiles(@"D:\Local_temp.msg")) //the error is here
        File.Copy(file, Path.Combine(@"D:\Newfolder", Path.GetFileName(file)), true);

}
错误是找不到路径“D:\Local\u temp.msg”的一部分

请帮帮我。。
谢谢。

您的
目录中似乎有一个输入错误。在
foreach
中的.GetFiles(@“D:\Local\u temp.msg”)
。您可能希望使用采用搜索模式的重载,如下所示:

foreach (var file in Directory.GetFiles(@"D:\Local_temp", "*.msg"))

按照当前编写的方式,您正在查找驱动器号D上“Local_temp.msg”目录中的所有文件。

使用
directory.GetFiles
的重载,该重载采用一种搜索模式:
(directory.GetFiles中的var file(@“D:\Local_temp”,“*.msg”)…
我收到此消息(对路径“D:\Newfolder\H-MSG-MSG-Disk 0-201405110430-4095.MSG”的访问被拒绝。)您需要确保运行程序的帐户有权访问该文件夹。现在问题出在这个代码文件中。Copy(File,path.Combine(@“D:\Newfolder”,path.GetFileName(File)),true);…我收到一条消息,它是(对路径“D:\Newfolder\H-MSG-MSG-Disk 0-201405110430-4095.MSG”的访问被拒绝)运行程序的帐户需要有访问权限(写入)该文件夹。如何获得访问该文件夹的权限?转到Windows资源管理器中的文件夹D:\Newfolder,单击鼠标右键,选择“属性”,选择“Seucrity”选项卡,单击“编辑”按钮,添加适当的用户帐户,并授予其读/写权限。