StorageFile.ContentType 属性,是 string 类型,用来表示文件内容的 MIME 类型。例如,音乐文件可能有 "audio/mpeg" MIME 类型。(MSDN)
MIME 类型的定义可以下面的链接找到:
MIME Types - http://blogs.msdn.com/b/jaimer/archive/2008/01/04/mime-types.aspx
MIME 参考手册 - http://www.w3school.com.cn/media/media_mimeref.asp
随便摘录了几个如下:
.mov | video/quicktime |
.movie | video/x-sgi-movie |
.mp2 | video/mpeg |
.mp3 | audio/mpeg |
.mpa | video/mpeg |
.mpe | video/mpeg |
.mpeg | video/mpeg |
.mpg | video/mpeg |
.mpp | application/vnd.ms-project |
所以可以简单的通过查找字符串判断文件的类型,如视频文件/图像文件等。
StorageFile file = await openPicker.PickSingleFileAsync();if (file .ContentType.IndexOf("video/") == 0) {// 视频文件 } else if (file .ContentType.IndexOf("image/") == 0) {// 图像文件 }
不过,经测试,这个类型只是简单的通过文件扩展名判断的,并不可靠。
另外,MSDN上备注说 WP8 系统不实现此 API ,调用会引发异常。未说明 Win10 Mobile 中是否可用。