Tag: 文件复制

将文件复制到网络共享我无法访问

这是这个问题的延伸 我正在尝试将文件从本地用户临时文件夹复制到远程文件共享。 我无权访问远程文件共享,因此我必须冒充用户。 现在,我可以从远程服务器成功读取文件并在本地复制它,但是我无法将本地文件写入共享,因为它给了我错误: LOCAL文件的访问被拒绝(因为我现在正在模仿另一个用户)。 如果你需要一些代码,我可以发布它。

C#中的高性能文件复制?

我有一个大约500k jpg文件的庞大目录,我想归档所有早于某个日期的文件。 目前,该脚本需要数小时才能运行。 这与GoGrid的存储服务器非常糟糕的性能有很大关系,但与此同时,我确信有一种方法可以更有效地实现Ram / Cpu,以实现我正在做的事情。 这是我的代码: var dirInfo = new DirectoryInfo(PathToSource); var fileInfo = dirInfo.GetFiles(“*.*”); var filesToArchive = fileInfo.Where(f => f.LastWriteTime.Date = StopThresholdInDays.Days().Ago().Date ); foreach (var file in filesToArchive) { file.CopyTo(PathToTarget+file.Name); } Days()。Ago()的东西只是语法糖。

如何在C#(windows app)中将文件从本地系统复制到其他系统?

我需要从我的Windows C#应用程序加载帮助文件并移动/复制到其他系统(到其本地驱动器)。 本地系统上的应用程序(相同的C#windows应用程序)将使用它来提供帮助。 要做到这一点需要做些什么? 我理解File.Copy()但我不知道,它是否也适用于远程系统?

计算文件复制的剩余时间

我有一个应用程序,通过网络将大量文件复制到文件服务器(而不是Web)。 我试图显示剩余时间的一半估计。 我已经查看了很多关于SO的文章,但问题得到了解决,我没有尝试过我真正想做的事情。 我希望估计的剩余时间相对稳定IE不会在整个地方跳转,这取决于波动的传输速度。 所以我看到的第一个解决方案是计算传输速度,以每秒字节数为单位 double bytePerSec = totalBytesCopied / TimeTaken.TotalSeconds; 然后将剩余的总字节除以传输速率。 double secRemain = (totalFileSizeToCopy – totalBytesCopied) / bytePerSec; 我认为,一旦复制了几MB,剩余的时间会变得更加稳定(虽然期望它会改变。但事实并非如此,它的不稳定性和跳跃遍布整个地方。 然后我在SO上尝试了一个解决方案…. double secRemain = (TimeTaken.TotalSeconds / totalBytesCopied) * (totalFileSizeToCopy – totalBytesCopied); 这是一个类似的计算,但希望它可能有所作为! 所以现在我有点想我需要从不同的角度来解决这个问题。 IE使用平均值? 使用某种倒数计时器并重置时间往往每隔一段时间? 只是寻找已经遇到过这个问题的人的意见或建议。

如何知道File.Copy成功了?

静态方法File.Copy(String, String)不返回值。 如果该function成功与否,我怎么能以编程方式知道呢? 如果没有抛出exception, File.Copy良好。 但我问的是如何把“不例外”作为一个条件。 像这样的东西: if(no exception happened){ //my code goes here } 编辑:我使用一个简单的计数器解决了这个问题如下: int i=0; try{ File.Copy(); } catch(e1){ i++; } catch(e2){ i++; } if(i==0){ //my code goes here } 感谢所有贡献者。 我会通过你的答案选择最好的。

如何调出内置的文件复制对话框?

我将使用我的winforms应用程序通过网络复制一个大文件,我需要显示某种进度条。 我没有自己制作自己的复制程序,而是认为简单地显示内置文件复制对话框可能会更好。 我还需要一个“复制完成”和“复制失败”通知。 我需要这个在Windows XP,Vista和7上工作。有没有办法打电话来从我的c#代码中使用这个function?

如何在另一个进程使用文件时复制该文件

是否可以同时复制另一个进程正在使用的文件? 我问,因为当我尝试使用以下代码复制文件时,会引发exception: System.IO.File.Copy(s, destFile, true); 提出的例外是: 该进程无法访问文件’D:\ temp \ 1000000045.zip’,因为它正由另一个进程使用。 我不想创建新文件,我只想复制或删除它。 这可能吗?