阅读视频信息(创建日期)?

时间:2012-11-26 03:19:51

标签: c# web-applications video taglib-sharp

在窗口中,我可以从属性中获取视频的创建日期(右键单击)。我对此有一些想法,但我不知道该怎么做。
1。直接从视频中获取视频信息(如在Windows中),
2。通过提取视频名称来获取创建日期(视频名称采用日期格式,即创建时间)。
我也使用 taglib-sharp 来获取视频的持续时间和分辨率,但我找不到任何关于如何获取视频创建日期的示例代码。

注意:日期格式的视频名称 - 例如,20121119_125550.avi

修改
找到这个代码,到目前为止它的工作

string fileName = Server.MapPath("//video//20121119_125550.avi");
FileInfo fileInfo = new FileInfo(fileName);
DateTime creationTime = fileInfo.CreationTime;

输出: 2012/11/19 12:55:50

对于文件名,我将在名称中添加另一个字符串。例如 User1-20121119_125550.avi.avi ,因此在此之后会变得复杂。

1 个答案:

答案 0 :(得分:1)

如果您可以安全地信任您的文件名,您可能会对以下内容感到满意:

string file_name = "20121119_125550.avi";
string raw_date = file_name.Split('.')[0];
CultureInfo provider = CultureInfo.InvariantCulture;


string format = "yyyyMMdd_hhmmss";
DateTime result = DateTime.ParseExact(raw_date, format, provider);

注意:您可能需要将using System.Globalization;添加到您希望在其中使用的任何文件中。

如果您只想创建文件的日期(在Windows资源管理器中看到的内容),您可以使用:

string file_path = @"C:\20121119_125550.avi"; //Add the correct path
DateTime result = File.GetCreationTime(file_path);