C# 在不更改创建时间的情况下,将mp4从手机传输到PC

C# 在不更改创建时间的情况下,将mp4从手机传输到PC,c#,mp4,file-transfer,C#,Mp4,File Transfer,我需要在我的一个项目中确定mp4的创建时间,如果不意外更改创建时间,将mp4从我的手机传输到我电脑的特定文件夹是完全不可能的。如果有人知道一个简单的方法,请告诉我,因为这是我的项目的重要组成部分,用户将不得不一直这样做。我已尝试从元数据读取创建时间,但windows甚至在您移动视频时更改元数据。 我甚至想过用c#构建一个应用程序,只是为了传输,但我不知道当我将视频传输到位数组时,创建时间是否会改变。 非常感谢您的帮助。当您使用Windows(或您的用户)时,您可以使用带有/CopyAll参数的r

我需要在我的一个项目中确定mp4的创建时间,如果不意外更改创建时间,将mp4从我的手机传输到我电脑的特定文件夹是完全不可能的。如果有人知道一个简单的方法,请告诉我,因为这是我的项目的重要组成部分,用户将不得不一直这样做。我已尝试从元数据读取创建时间,但windows甚至在您移动视频时更改元数据。
我甚至想过用c#构建一个应用程序,只是为了传输,但我不知道当我将视频传输到位数组时,创建时间是否会改变。
非常感谢您的帮助。

当您使用Windows(或您的用户)时,您可以使用带有/CopyAll参数的
robocy
,以保留所有原始文件信息(日期、属性等)。如果要用c#编写程序,可以使用以下行:

System.Diagnostics.Process.Start("CMD.exe","/C robocopy  Source-directory Dest-directory YourFileName /COPYALL");

我现在找到了一个半最优的解决方案,因为这取决于你使用的设备是否能工作。我刚刚注意到文件名包含创建时间,因此我可以在将文件添加到文件夹时根据名称设置creationtime。

感谢所有给我提示的人。

File.SetCreationTime?是的,但是我从哪里获得视频的真实creationtime?但是windows甚至在移动视频时更改元数据-真的吗?如。。如果我有一些mp4,我把它从文件夹A复制到B,它们就不再是二进制的了?我将对此进行测试我已经测试过了,并拒绝了您的断言?我知道,但我无法找到通过cmd访问手机存储的方法